s3-tests/request_decision_graph.yml
Kyle Marsh bfca00ac4c S3 Fuzzer: start writing nodes for bucket PUTs
Continue working on decision graph; add PUT requests for buckets.
2011-09-12 12:58:20 -07:00

200 lines
5.4 KiB
YAML

start:
set: {}
choices:
- bucket
bucket:
set:
urlpath: /{bucket}
choices:
- 13 bucket_get
- 8 bucket_put
- 5 bucket_delete
- bucket_garbage
garbage_method:
set:
method:
- {random 1-100 printable}
- {random 10-100 binary}
urlpath:
- /{bucket}
- /{bucket}/{object}
- {random 10-1000 binary}
choices:
- bucket_get_simple
- bucket_get_filtered
- bucket_get_uploads
- bucket_put_create
- bucket_put_versioning
- bucket_put_simple
bucket_delete:
set:
method: DELETE
bucket:
- {bucket_writable}
- {bucket_not_writable}
- {random 10-3000 printable}
- {random 10-1000 binary}
query:
- null
- policy
- website
- {random 2-20 printable}
- {random 10-1000 binary}
choices: []
bucket_get:
set:
method: GET
bucket:
- {bucket_readable}
- {bucket_not_readable}
- {random 10-3000 printable}
- {random 10-1000 binary}
choices:
- 11 bucket_get_simple
- bucket_get_filtered
- bucket_get_uploads
bucket_get_simple:
set:
query:
- acl
- policy
- location
- logging
- notification
- versions
- requestPayment
- versioning
- website
- {random 2-20 printable}
- {random 10-1000 binary}
choices: []
bucket_get_uploads:
set:
query:
-
choices: []
bucket_get_filtered:
set:
delimiter:
- 'delimiter={random 10-50 binary}'
- 'delimiter={random 1000-3000 printable}'
prefix:
- 'prefix={random 10-50 binary}'
- 'prefix={random 100-3000 printable}'
marker:
- 'marker={object_readable}'
- 'marker={object_not_readable}'
- 'marker={invalid_key}'
- 'marker={random 100-1000 printable}'
max_keys:
- 'max-keys={random 1-5 binary}'
- 'max-keys={random 1-1000 digits}'
query:
- null
- '{delimiter}&{prefix}'
- '{max-keys}&{marker}'
- {random 10-1000 printable}
- {random 10-1000 binary}
choices: []
bucket_put:
set:
bucket:
- {bucket_writable}
- {bucket_not_writable}
- {random 10-3000 printable}
- {random 10-1000 binary}
method: PUT
choices:
- bucket_put_simple
- bucket_put_create
- bucket_put_versioning
bucket_put_create:
set:
body:
- {random 3000 printable}
- {random 10-3000 binary}
- '<CreateBucketConfiguration><LocationConstraint>{random 2-10 binary}</LocationConstraint></CreateBucketConfiguration>'
acl:
- private
- {random 3000 letters}
- {random 100-1000 binary}
headers:
- ['0-1', 'x-amz-acl', '{acl}']
choices: []
bucket_put_versioning:
set:
body:
- {random 3000 printable}
- {random 10-3000 binary}
- 8 '<VersioningConfiguration>{versioning_status}{mfa_delete_body}</VersioningConfiguration>'
mfa_delete_body:
- null
- '<Status>{random 2-10 binary}</Status>'
- '<Status>{random 2000-3000 printable}</Status>'
versioning_status:
- null
- '<MfaDelete>{random 2-10 binary}</MfaDelete>'
- '<MfaDelete>{random 2000-3000 printable}</MfaDelete>'
mfa_header:
- {random 10-1000 printable} {random 10-1000 printable}
headers:
- ['0-1', 'x-amz-mfa', '{mfa_header}']
choices: []
bucket_put_simple:
set:
body:
- {acl_body}
- {policy_body}
- {logging_body}
- {notification_body}
- {request_payment_body}
- {website_body}
acl_body:
- '<AccessControlPolicy>{owner}{acl}</AccessControlPolicy>'
owner:
- null
- 7 '<Owner>{id}{display_name}</Owner>'
id:
- null
- '<ID>{random 10-200 binary}</ID>'
- '<ID>{random 1000-3000 printable}</ID>'
display_name:
- null
- '<DisplayName>{random 10-200 binary}</DisplayName>'
- '<DisplayName>{random 1000-3000 printable}</DisplayName>'
- '<DisplayName>{random 10-300 letters}@{random 10-300 letters}.{random 2-4 letters}</DisplayName>'
acl:
- null
- 10 '<AccessControlList><Grant>{grantee}{permission}</Grant></AccessControlList>'
grantee:
- null
- 7 '<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">{id}{display_name}</Grantee>'
permission:
- null
- 7 '<Permission>{permission_value}</Permission>'
permission_value:
- {random 10-100 binary}
- {random 1000-2000 printable}
- FULL_CONTROL
- WRITE
- WRITE_ACP
- READ
- READ_ACP
policy_body: TODO
logging_body: TODO
notification_body: TODO
request_payment_body: TODO
website_body: TODO
choices: []