MCPcopy
hub / github.com/minio/minio-go / testPutObjectWithAutoChecksums

Function testPutObjectWithAutoChecksums

functional_tests.go:1984–2076  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1982}
1983
1984func testPutObjectWithAutoChecksums() {
1985 // initialize logging params
1986 startTime := time.Now()
1987 testName := getFuncName()
1988 function := "PutObject(bucketName, objectName, reader, size, opts)"
1989 args := map[string]interface{}{
1990 "bucketName": "",
1991 "objectName": "",
1992 "opts": "minio.PutObjectOptions{UserMetadata: metadata, Progress: progress}",
1993 }
1994
1995 if !isFullMode() {
1996 logIgnored(testName, function, args, startTime, "Skipping functional tests for short/quick runs")
1997 return
1998 }
1999
2000 c, err := NewClient(ClientConfig{TrailingHeaders: true})
2001 if err != nil {
2002 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
2003 return
2004 }
2005
2006 // Generate a new random bucket name.
2007 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
2008 args["bucketName"] = bucketName
2009
2010 // Make a new bucket.
2011 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"})
2012 if err != nil {
2013 logError(testName, function, args, startTime, "", "Make bucket failed", err)
2014 return
2015 }
2016
2017 defer cleanupBucket(bucketName, c)
2018 const testfile = "datafile-1.03-MB"
2019 bufSize := dataFileMap[testfile]
2020
2021 // Save the data
2022 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
2023 args["objectName"] = objectName
2024
2025 cmpChecksum := func(got, want string) {
2026 if want != got {
2027 logError(testName, function, args, startTime, "", "checksum mismatch", fmt.Errorf("want %s, got %s", want, got))
2028 return
2029 }
2030 }
2031
2032 meta := map[string]string{}
2033 reader := getDataReader(testfile)
2034 b, err := io.ReadAll(reader)
2035 if err != nil {
2036 logError(testName, function, args, startTime, "", "Read failed", err)
2037 return
2038 }
2039 h := minio.ChecksumCRC64NVME.Hasher()
2040 h.Reset()
2041 h.Write(b)

Callers 1

mainFunction · 0.85

Calls 15

MakeBucketMethod · 0.95
PutObjectMethod · 0.95
StatObjectMethod · 0.95
getFuncNameFunction · 0.85
isFullModeFunction · 0.85
logIgnoredFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
cleanupBucketFunction · 0.85
getDataReaderFunction · 0.85
cmpChecksumFunction · 0.85
logSuccessFunction · 0.85

Tested by

no test coverage detected