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

Function TestCoreCopyObjectPart

core_test.go:504–654  ·  view source on GitHub ↗

Test Core CopyObjectPart implementation

(t *testing.T)

Source from the content-addressed store, hash-verified

502
503// Test Core CopyObjectPart implementation
504func TestCoreCopyObjectPart(t *testing.T) {
505 if os.Getenv(serverEndpoint) == "" {
506 t.Skip("SERVER_ENDPOINT not set")
507 }
508 if testing.Short() {
509 t.Skip("skipping functional tests for short runs")
510 }
511
512 // Instantiate new minio client object.
513 c, err := NewCore(
514 os.Getenv(serverEndpoint),
515 &Options{
516 Creds: credentials.NewStaticV4(os.Getenv(accessKey), os.Getenv(secretKey), ""),
517 Secure: mustParseBool(os.Getenv(enableSecurity)),
518 })
519 if err != nil {
520 t.Fatal("Error:", err)
521 }
522
523 // Enable tracing, write to stderr.
524 // c.TraceOn(os.Stderr)
525
526 // Set user agent.
527 c.SetAppInfo("MinIO-go-FunctionalTest", "0.1.0")
528
529 // Generate a new random bucket name.
530 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test")
531
532 // Make a new bucket.
533 err = c.MakeBucket(context.Background(), bucketName, MakeBucketOptions{Region: "us-east-1"})
534 if err != nil {
535 t.Fatal("Error:", err, bucketName)
536 }
537
538 // Make a buffer with 5MB of data
539 buf := bytes.Repeat([]byte("abcde"), 1024*1024)
540 metadata := map[string]string{
541 "Content-Type": "binary/octet-stream",
542 }
543 putopts := PutObjectOptions{
544 UserMetadata: metadata,
545 }
546 // Save the data
547 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
548 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), "", "", putopts)
549 if err != nil {
550 t.Fatal("Error:", err, bucketName, objectName)
551 }
552
553 st, err := c.StatObject(context.Background(), bucketName, objectName, StatObjectOptions{})
554 if err != nil {
555 t.Fatal("Error:", err, bucketName, objectName)
556 }
557
558 if st.Size != int64(len(buf)) {
559 t.Fatalf("Error: number of bytes does not match, want %v, got %v\n", len(buf), st.Size)
560 }
561

Callers

nothing calls this directly

Calls 15

PutObjectMethod · 0.95
NewMultipartUploadMethod · 0.95
CopyObjectPartMethod · 0.95
SetRangeMethod · 0.95
GetObjectMethod · 0.95
NewStaticV4Function · 0.92
NewCoreFunction · 0.85
SetAppInfoMethod · 0.80
MakeBucketMethod · 0.80
StatObjectMethod · 0.80
EqualMethod · 0.80

Tested by

no test coverage detected