fix(s3): improve S3 API compatibility for versioning, SSE, and policy (#2013)

This commit is contained in:
安正超
2026-03-01 02:21:13 +08:00
committed by GitHub
parent 0701e1c35f
commit fe884eabfc
7 changed files with 75 additions and 31 deletions
+8 -1
View File
@@ -20,7 +20,10 @@
# - SSE-C: Server-side encryption with customer-provided keys
# - Object ownership: Bucket ownership controls
#
# Total: 224 tests
# - SSE-KMS: KMS-related edge cases
# - Bucket Policy: Multipart upload authorization
#
# Total: 228 tests
test_basic_key_count
test_bucket_create_naming_bad_short_one
@@ -169,7 +172,9 @@ test_put_obj_enc_conflict_c_kms
test_put_obj_enc_conflict_s3_kms
test_put_obj_enc_conflict_bad_enc_kms
test_sse_kms_not_declared
test_sse_kms_no_key
test_sse_kms_read_declare
test_encryption_sse_c_multipart_bad_download
# ListObjectsV2 delimiter and encoding tests
test_bucket_list_encoding_basic
@@ -207,6 +212,7 @@ test_bucket_policy_acl
test_bucketv2_policy_acl
test_bucket_policy_another_bucket
test_bucket_policy_allow_notprincipal
test_bucket_policy_multipart
test_bucket_policy_put_obj_acl
test_object_presigned_put_object_with_acl
test_object_put_acl_mtime
@@ -255,6 +261,7 @@ test_versioned_concurrent_object_create_and_remove
test_versioned_concurrent_object_create_concurrent_remove
test_versioned_object_acl
test_versioning_bucket_create_suspend
test_versioning_bucket_atomic_upload_return_version_id
test_versioning_bucket_multipart_upload_return_version_id
test_versioning_multi_object_delete
test_versioning_multi_object_delete_with_marker
+1 -6
View File
@@ -6,18 +6,16 @@
#
# Unimplemented features:
# - Bucket Logging: Access logging
# - SSE-KMS: Partial SSE-KMS edge cases
# - Object Lock: Enable after create
# - Checksum: Full checksum validation
# - Conditional writes: If-Match/If-None-Match for writes
# - Bucket Ownership Controls
# Failed tests (21)
# Failed tests (17)
test_bucket_create_delete_bucket_ownership
test_bucket_logging_owner
test_bucket_policy_put_obj_kms_s3
test_bucket_policy_put_obj_s3_kms
test_encryption_sse_c_multipart_bad_download
test_object_checksum_crc64nvme
test_object_checksum_sha256
test_object_lock_put_obj_lock_enable_after_create
@@ -27,8 +25,6 @@ test_put_bucket_logging_errors
test_put_bucket_logging_permissions
test_put_bucket_logging_policy_wildcard
test_rm_bucket_logging
test_sse_kms_no_key
test_versioning_bucket_atomic_upload_return_version_id
test_versioning_concurrent_multi_object_delete
# Skipped tests (require IAM account or multiple storage classes)
@@ -52,6 +48,5 @@ test_atomic_write_8mb
# Tests with known issues (need further investigation)
test_bucket_policy_different_tenant
test_bucket_policy_multipart
test_bucket_policy_put_obj_grant
test_bucket_policy_tenanted_bucket