Tests get object ReaderAt interface methods.
()
| 5468 | |
| 5469 | // Tests get object ReaderAt interface methods. |
| 5470 | func testGetObjectReadAtFunctional() { |
| 5471 | // initialize logging params |
| 5472 | startTime := time.Now() |
| 5473 | testName := getFuncName() |
| 5474 | function := "GetObject(bucketName, objectName)" |
| 5475 | args := map[string]interface{}{} |
| 5476 | |
| 5477 | c, err := NewClient(ClientConfig{}) |
| 5478 | if err != nil { |
| 5479 | logError(testName, function, args, startTime, "", "MinIO client object creation failed", err) |
| 5480 | return |
| 5481 | } |
| 5482 | |
| 5483 | // Generate a new random bucket name. |
| 5484 | bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-") |
| 5485 | args["bucketName"] = bucketName |
| 5486 | |
| 5487 | // Make a new bucket. |
| 5488 | err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}) |
| 5489 | if err != nil { |
| 5490 | logError(testName, function, args, startTime, "", "MakeBucket failed", err) |
| 5491 | return |
| 5492 | } |
| 5493 | |
| 5494 | defer cleanupBucket(bucketName, c) |
| 5495 | |
| 5496 | // Generate 33K of data. |
| 5497 | bufSize := dataFileMap["datafile-33-kB"] |
| 5498 | reader := getDataReader("datafile-33-kB") |
| 5499 | defer reader.Close() |
| 5500 | |
| 5501 | objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "") |
| 5502 | args["objectName"] = objectName |
| 5503 | |
| 5504 | buf, err := io.ReadAll(reader) |
| 5505 | if err != nil { |
| 5506 | logError(testName, function, args, startTime, "", "ReadAll failed", err) |
| 5507 | return |
| 5508 | } |
| 5509 | |
| 5510 | // Save the data |
| 5511 | _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{ContentType: "binary/octet-stream"}) |
| 5512 | if err != nil { |
| 5513 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 5514 | return |
| 5515 | } |
| 5516 | |
| 5517 | // read the data back |
| 5518 | r, err := c.GetObject(context.Background(), bucketName, objectName, minio.GetObjectOptions{}) |
| 5519 | if err != nil { |
| 5520 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 5521 | return |
| 5522 | } |
| 5523 | offset := int64(2048) |
| 5524 | |
| 5525 | // read directly |
| 5526 | buf1 := make([]byte, 512) |
| 5527 | buf2 := make([]byte, 512) |
no test coverage detected