Tests get object ReaderAt interface methods.
()
| 5364 | |
| 5365 | // Tests get object ReaderAt interface methods. |
| 5366 | func 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) |
no test coverage detected