Mark Kampe
a268bcfbef
RGW test-case annotation for inventory.
...
Annotated S3 functional and error-detection test cases
with resource/method/operation/assertion properties to
enable automatic test case inventory generation.
Signed-off-by: Mark Kampe <mark.kampe@dreamhost.com>
2011-12-22 16:09:21 -08:00
Yehuda Sadeh
f7dde840a3
test_bucket_create_bad_contentlength_empty should use its own connection
...
since it can leave the connection in a wierd state
2011-11-22 14:46:53 -08:00
Yehuda Sadeh
a030d88e58
add bucket header tests
2011-11-22 13:25:42 -08:00
Matthew Wodrich
c749ff5043
Mark tests that fail with subdomain calling format
...
Add @attr('fails_with_subdomain') on all tests that should fail when
subdomain calling format is used, because they break DNS rules.
2011-11-04 16:29:54 -07:00
Matthew Wodrich
c4bded31c2
add calling_format switch in functional and common
...
Add calling_format switch with options ordinary, subdomain, and vhost to
s3tests/functional/__init__.py and /s3tests/common.py to allow the use
of OrdinaryCallingFormat, SubdomainCallingFormat, and VHostCallingFormat
in the config files for the nosetests and the tools using the common
parser.
2011-11-03 10:22:23 -07:00
Stephon Striplin
dec5360c92
add fails_on_dho on a failing test
...
It turns out that the e-mail comments were legitimate. The reason the
tests were passing was because the specific users now had e-mail
addresses, but this not the default case.
2011-10-28 12:47:25 -07:00
Tommi Virtanen
5b250e57e1
Let nose run s3tests in parallel.
...
This decreases the run time significantly.
Unfortunately, there seem to be cleanup-related bugs
in parallel runs for now. It's not safe to actually
run with --processes=N >1 yet, but at least the right
magic incantation is now recorded.
2011-10-13 13:35:56 -07:00
Tommi Virtanen
27d2e40b7d
Move fuzzer under s3tests/fuzz.
...
This way, its unit tests are separate from s3tests/functional,
and s3tests/functional is the thing that actually talks to an
S3 implementation over the wire.
To actually run the fuzzer, use ./virtualenv/bin/s3tests-fuzz-headers
2011-10-13 13:34:23 -07:00
Tommi Virtanen
a18eee85fe
Merge remote branch 'github/fuzz_headers'
2011-10-12 15:47:28 -07:00
Stephon Striplin
83755e2782
remove fails_on_{dho,rgw} on passing tests
2011-10-07 12:30:15 -07:00
Sage Weil
e486100a60
add s3tests.functional.test_s3.test_bucket_list_distinct
2011-10-05 16:04:20 -07:00
Sage Weil
211df8dc22
add fails_on_dho to test_object_create_bad_authorization_unreadable
2011-09-26 13:37:16 -07:00
Stephon Striplin
2fcdc79299
add fail_on_rgw on test_object_create_bad_authorization_unreadable
2011-09-23 15:14:26 -07:00
Stephon Striplin
377e968120
Rename object acl test
2011-09-22 13:07:02 -07:00
Stephon Striplin
dc732021d6
add no Content-Length PUT object acl test
2011-09-22 12:50:13 -07:00
Kyle Marsh
046b92b7eb
S3 Fuzzer: httplib error handling
...
Sometimes httplib will through a BadStatusLine error that the fuzzer should
catch and register as a failure.
2011-09-12 13:05:29 -07:00
Kyle Marsh
18c3fe53c2
S3 Fuzzer: Output and garbage data tweaks.
...
- Output tweaks
- added support for printable_no_whitespace and binary_no_whitespace
2011-09-12 13:03:55 -07:00
Kyle Marsh
23fee1476a
S3 Fuzzer: Start Fuzzing
...
- tweak yaml decision graph
- add test setup bucket creation, etc.
- add output with varying levels of verbosity
2011-09-12 13:01:07 -07:00
Kyle Marsh
e12f124686
S3 Fuzzer: Change how random data works
...
Remove SpecialVariables dict subclass in favor of RepeatExpandingFormatter
string.Formatter subclass.
2011-09-12 12:58:57 -07:00
Kyle Marsh
14288ad2f6
S3 Fuzzer: Incorporate Tv's suggestions
...
Tv looked over the fuzzer and had some idiomatic and design suggestions.
Adds several tests and reworks how expansion happens in addition to idiom
changes.
2011-09-12 12:57:43 -07:00
Kyle Marsh
bb7111a0d1
S3 Fuzzer: Write Decision Graph
...
Start writing the decision graph describing the fuzzer's attack surface in
earnest.
2011-09-12 12:55:32 -07:00
Kyle Marsh
62bd05a390
S3 Fuzzer: Handle null choices
...
Sometimes you might want to have your current node terminate the descent or
set something to the empty string.
2011-09-12 12:53:18 -07:00
Kyle Marsh
d7b49713f7
S3 Fuzzer: Implmented headers and made random safe
...
Random can sometimes include } or { which will confuse the string formatter.
Formatter escapes those values when they're doubled: }}, {{ but this
required some slight hacking to the expander.
2011-09-12 12:53:18 -07:00
Kyle Marsh
3f1314f7c8
S3 Fuzzer: set values can be weighted lists now
2011-09-12 12:53:18 -07:00
Kyle Marsh
4737652fc1
S3 Fuzzer: Added binary mode to random data generator
2011-09-12 12:53:18 -07:00
Kyle Marsh
195571b555
S3 Fuzzer: support weights for choices
2011-09-12 12:53:18 -07:00
Kyle Marsh
f5bb3f9c15
S3 Fuzzer: implemented decision expansion
...
Decision reached by descending the graph describing the attack surface can
be expanded to fill in all the placeholders
2011-09-12 12:53:17 -07:00
Kyle Marsh
7d9ec02686
S3 Fuzzer: Added SpecialVariables dict subclass
...
Helper class to catch sentinal keys and turn them into random values. This
will be used to generate garbage data when expanding a decision.
Also add unit tests for expand_decision and assemble_decision
2011-09-12 12:52:37 -07:00
Kyle Marsh
a9a41a2891
S3 Fuzzer: began writing graph descent
...
still missing headers and choice weights
2011-09-12 12:52:37 -07:00
Kyle Marsh
fc93c02963
S3 Fuzzer: Change direction towards decision tree
...
Fuzzer now builds requests based on a DAG that describes the request space
and attack surface.
2011-09-12 12:51:01 -07:00
Stephon Striplin
2efa622751
Add atomic read tests
2011-08-29 13:14:18 -07:00
Stephon Striplin
f232f43d0b
update attr decorators for dho
...
* passes test_object_raw_put_authenticated
* fails test_atomic_write_bucket_gone
2011-08-29 12:47:17 -07:00
Stephon Striplin
eeaeec573b
don't delete key in atomic gone test
...
The key hasn't been written to the server so it doesn't need a delete
2011-08-29 12:36:00 -07:00
Stephon Striplin
3d775a02f4
add raw PUT tests
2011-08-26 13:45:37 -07:00
Stephon Striplin
76f78c0bb8
refactor raw GET tests
...
urllib2 is no longer necessary. We will use urlparse instead to get the
path and query components of the uri.
2011-08-26 13:42:31 -07:00
Stephon Striplin
e4d78eccbb
add test for missing Content-Length header bucket creation
2011-08-25 17:46:25 -07:00
Stephon Striplin
aa700f1c8a
add an atomic put test for removing bucket
2011-08-25 17:20:11 -07:00
Stephon Striplin
18d0b7d250
Add raw GET tests
2011-08-25 11:39:50 -07:00
Stephon Striplin
ea3f73ef90
add bucket list data vs object data comparison tests
...
* test_bucket_list_return_data
* test_bucket_list_object_time
2011-08-11 15:58:26 -07:00
Stephon Striplin
fd68aa2b5b
remove superfluous code in test_bucket_list_maxkeys_zero
2011-08-11 15:52:16 -07:00
Stephon Striplin
16d84101e4
remove fails_on_dho on passing tests
...
* test_object_set_get_metadata_empty_to_unreadable_prefix
* test_object_set_get_metadata_empty_to_unreadable_suffix
* test_object_set_get_metadata_empty_to_unreadable_infix
* test_object_set_get_metadata_overwrite_to_unreadable_prefix
* test_object_set_get_metadata_overwrite_to_unreadable_suffix
* test_object_set_get_metadata_overwrite_to_unreadable_infix
2011-08-11 13:42:10 -07:00
Stephon Striplin
5e7792e0bf
Switch test_bucket_list_maxkeys_unreadble to use '\n' instead of '\a'.
...
This avoids the SAX parser error. It also gave a different error code
from Amazon.
2011-08-11 11:23:43 -07:00
Stephon Striplin
80d332346f
Switch tests using '\a' to '\n'
...
As noted in ce3d448d64
, This will avoid
SAX parser errors.
2011-08-11 11:21:17 -07:00
Stephon Striplin
adcfe6f681
remove contentlength zero header test
...
This test effectively tells the server that this request will contain no
data and any data in the body should be interpreted to be part of the
next request. By luck, we close the tcp connection beforehand so we
don't see this additional data. However, the issues caused here would
not be at the rgw/dho level.
2011-08-11 11:01:56 -07:00
Tommi Virtanen
230ec11852
Flag test_object_create_bad_contenttype_unreadable as failing on both RGW and DHO.
2011-08-11 09:35:06 -07:00
Tommi Virtanen
76faa58bf7
DHO does not support bucket logging currently.
2011-08-11 09:31:20 -07:00
Tommi Virtanen
ce3d448d64
Switch test_object_create_unreadable to use '\n' instead of '\a'.
...
This avoids a SAX/boto interaction bug that is not of much interest,
yet still seems "evil" enough that it fulfills the original intent
of the test.
Add a link to the relevant bug report.
2011-08-11 09:30:26 -07:00
Tommi Virtanen
48e078a758
Flag test_bucket_list_maxkeys_unreadable as failing on dho & rgw.
2011-08-11 09:28:48 -07:00
Tommi Virtanen
6577c8266c
Flag some fails_on_dho tests as fails_on_rgw too.
2011-08-11 08:47:25 -07:00
Tommi Virtanen
7da111aa7e
Test that S3 object write replaces the metadata.
...
See http://tracker.newdream.net/issues/1352
2011-08-10 15:04:19 -07:00