Skip to content

Commit 7ea97e5

Browse files
authored
Add integration test case for flex checksum (#2967)
* add checksum test case where checksum is required without algo member * add changelog * update test comment * update test log
1 parent c578cdd commit 7ea97e5

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"id": "dac44b16-ae46-483d-a912-6a7088225e04",
3+
"type": "bugfix",
4+
"description": "Add s3 checksum integration test case where operations require checksum but do not have input algorithm setting",
5+
"modules": [
6+
"service/internal/integrationtest"
7+
]
8+
}

service/internal/integrationtest/s3/checksum_test.go

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,38 @@ func TestInteg_RequireChecksum(t *testing.T) {
541541
}
542542
}
543543

544+
func TestInteg_RequireChecksumWithoutRequestAlgorithmMember(t *testing.T) {
545+
params := &s3.PutBucketOwnershipControlsInput{
546+
Bucket: &setupMetadata.Buckets.Source.Name,
547+
OwnershipControls: &types.OwnershipControls{
548+
Rules: []types.OwnershipControlsRule{
549+
{
550+
ObjectOwnership: types.ObjectOwnershipBucketOwnerPreferred,
551+
},
552+
},
553+
},
554+
}
555+
556+
t.Logf("putting bucket ownership control: %q", *params.Bucket)
557+
result, err := s3client.PutBucketOwnershipControls(context.Background(), params)
558+
if err != nil {
559+
t.Fatalf("expect no error, got %v", err)
560+
}
561+
computedChecksums, ok := s3.GetComputedInputChecksumsMetadata(result.ResultMetadata)
562+
if !ok {
563+
t.Fatalf("expect computed checksums metadata present, got %q", result)
564+
}
565+
566+
expectComputedChecksums := s3.ComputedInputChecksumsMetadata{
567+
ComputedChecksums: map[string]string{
568+
"CRC32": "cK9COg==",
569+
},
570+
}
571+
if diff := cmpDiff(expectComputedChecksums, computedChecksums); diff != "" {
572+
t.Errorf("expect computed checksum metadata match: %s\n", diff)
573+
}
574+
}
575+
544576
func bufferLogger(t *testing.T) (logging.Logger, *bytes.Buffer) {
545577
var logged bytes.Buffer
546578

0 commit comments

Comments
 (0)