From: Casey Bodley Date: Thu, 22 May 2025 18:33:00 +0000 (-0400) Subject: s3: test retry after error instead of 100-continue X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ca187644f7a60df15185b109cb58a2184c99887e;p=s3-tests.git s3: test retry after error instead of 100-continue Signed-off-by: Casey Bodley --- diff --git a/s3tests_boto3/functional/test_s3.py b/s3tests_boto3/functional/test_s3.py index 6723d71d..83dfe210 100644 --- a/s3tests_boto3/functional/test_s3.py +++ b/s3tests_boto3/functional/test_s3.py @@ -6772,6 +6772,20 @@ def test_100_continue(): status = _simple_http_req_100_cont(host, port, is_secure, 'PUT', resource) assert status == '100' +@pytest.mark.fails_on_rgw # https://tracker.ceph.com/issues/64841 +def test_100_continue_error_retry(): + client = get_client() + bucket_name = get_new_bucket(client) + + # expects put_object() to use 'Expect: 100-continue'. send one request to a + # non-existent bucket, expecting '404 NoSuchBucket' instead of '100 Continue' + not_bucket_name = f'{bucket_name}-but-doesnt-exist' + e = assert_raises(ClientError, client.put_object, Bucket=not_bucket_name, Key='foo', Body='bar') + assert 404 == _get_status(e.response) + + # send another request on the same connection + client.put_object(Bucket=bucket_name, Key='foo', Body='bar') + def test_set_cors(): bucket_name = get_new_bucket() client = get_client()