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

Function testGetObjectReadAtFunctional

functional_tests.go:5366–5562  ·  view source on GitHub ↗

Tests get object ReaderAt interface methods.

()

Source from the content-addressed store, hash-verified

5364
5365// Tests get object ReaderAt interface methods.
5366func testGetObjectReadAtFunctional() {
5367 // initialize logging params
5368 startTime := time.Now()
5369 testName := getFuncName()
5370 function := "GetObject(bucketName, objectName)"
5371 args := map[string]interface{}{}
5372
5373 c, err := NewClient(ClientConfig{})
5374 if err != nil {
5375 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
5376 return
5377 }
5378
5379 // Generate a new random bucket name.
5380 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
5381 args["bucketName"] = bucketName
5382
5383 // Make a new bucket.
5384 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"})
5385 if err != nil {
5386 logError(testName, function, args, startTime, "", "MakeBucket failed", err)
5387 return
5388 }
5389
5390 defer cleanupBucket(bucketName, c)
5391
5392 // Generate 33K of data.
5393 bufSize := dataFileMap["datafile-33-kB"]
5394 reader := getDataReader("datafile-33-kB")
5395 defer reader.Close()
5396
5397 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
5398 args["objectName"] = objectName
5399
5400 buf, err := io.ReadAll(reader)
5401 if err != nil {
5402 logError(testName, function, args, startTime, "", "ReadAll failed", err)
5403 return
5404 }
5405
5406 // Save the data
5407 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{ContentType: "binary/octet-stream"})
5408 if err != nil {
5409 logError(testName, function, args, startTime, "", "PutObject failed", err)
5410 return
5411 }
5412
5413 // read the data back
5414 r, err := c.GetObject(context.Background(), bucketName, objectName, minio.GetObjectOptions{})
5415 if err != nil {
5416 logError(testName, function, args, startTime, "", "PutObject failed", err)
5417 return
5418 }
5419 offset := int64(2048)
5420
5421 // read directly
5422 buf1 := make([]byte, 512)
5423 buf2 := make([]byte, 512)

Callers 1

mainFunction · 0.85

Calls 14

MakeBucketMethod · 0.95
PutObjectMethod · 0.95
GetObjectMethod · 0.95
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
cleanupBucketFunction · 0.85
getDataReaderFunction · 0.85
logSuccessFunction · 0.85
ReadAtMethod · 0.80
EqualMethod · 0.80
StatMethod · 0.80

Tested by

no test coverage detected