()
| 2086 | } |
| 2087 | |
| 2088 | func testPutObjectWithAutoChecksums() { |
| 2089 | // initialize logging params |
| 2090 | startTime := time.Now() |
| 2091 | testName := getFuncName() |
| 2092 | function := "PutObject(bucketName, objectName, reader, size, opts)" |
| 2093 | args := map[string]interface{}{ |
| 2094 | "bucketName": "", |
| 2095 | "objectName": "", |
| 2096 | "opts": "minio.PutObjectOptions{UserMetadata: metadata, Progress: progress}", |
| 2097 | } |
| 2098 | |
| 2099 | if !isFullMode() { |
| 2100 | logIgnored(testName, function, args, startTime, "Skipping functional tests for short/quick runs") |
| 2101 | return |
| 2102 | } |
| 2103 | |
| 2104 | c, err := NewClient(ClientConfig{TrailingHeaders: true}) |
| 2105 | if err != nil { |
| 2106 | logError(testName, function, args, startTime, "", "MinIO client object creation failed", err) |
| 2107 | return |
| 2108 | } |
| 2109 | |
| 2110 | // Generate a new random bucket name. |
| 2111 | bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-") |
| 2112 | args["bucketName"] = bucketName |
| 2113 | |
| 2114 | // Make a new bucket. |
| 2115 | err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}) |
| 2116 | if err != nil { |
| 2117 | logError(testName, function, args, startTime, "", "Make bucket failed", err) |
| 2118 | return |
| 2119 | } |
| 2120 | |
| 2121 | defer cleanupBucket(bucketName, c) |
| 2122 | const testfile = "datafile-1.03-MB" |
| 2123 | bufSize := dataFileMap[testfile] |
| 2124 | |
| 2125 | // Save the data |
| 2126 | objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "") |
| 2127 | args["objectName"] = objectName |
| 2128 | |
| 2129 | cmpChecksum := func(got, want string) { |
| 2130 | if want != got { |
| 2131 | logError(testName, function, args, startTime, "", "checksum mismatch", fmt.Errorf("want %s, got %s", want, got)) |
| 2132 | return |
| 2133 | } |
| 2134 | } |
| 2135 | |
| 2136 | meta := map[string]string{} |
| 2137 | reader := getDataReader(testfile) |
| 2138 | b, err := io.ReadAll(reader) |
| 2139 | if err != nil { |
| 2140 | logError(testName, function, args, startTime, "", "Read failed", err) |
| 2141 | return |
| 2142 | } |
| 2143 | h := minio.ChecksumCRC64NVME.Hasher() |
| 2144 | h.Reset() |
| 2145 | h.Write(b) |
no test coverage detected