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

Function TestCoreGetObjectMetadata

core_test.go:751–809  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

749}
750
751func TestCoreGetObjectMetadata(t *testing.T) {
752 if os.Getenv(serverEndpoint) == "" {
753 t.Skip("SERVER_ENDPOINT not set")
754 }
755 if testing.Short() {
756 t.Skip("skipping functional tests for the short runs")
757 }
758
759 core, err := NewCore(
760 os.Getenv(serverEndpoint),
761 &Options{
762 Creds: credentials.NewStaticV4(os.Getenv(accessKey), os.Getenv(secretKey), ""),
763 Secure: mustParseBool(os.Getenv(enableSecurity)),
764 })
765 if err != nil {
766 t.Fatal(err)
767 }
768
769 // Generate a new random bucket name.
770 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test")
771
772 // Make a new bucket.
773 err = core.MakeBucket(context.Background(), bucketName, MakeBucketOptions{Region: "us-east-1"})
774 if err != nil {
775 t.Fatal("Error:", err, bucketName)
776 }
777
778 metadata := map[string]string{
779 "X-Amz-Meta-Key-1": "Val-1",
780 }
781 putopts := PutObjectOptions{
782 UserMetadata: metadata,
783 }
784
785 _, err = core.PutObject(context.Background(), bucketName, "my-objectname",
786 bytes.NewReader([]byte("hello")), 5, "", "", putopts)
787 if err != nil {
788 t.Fatal(err)
789 }
790
791 reader, objInfo, _, err := core.GetObject(context.Background(), bucketName, "my-objectname", GetObjectOptions{})
792 if err != nil {
793 t.Fatal(err)
794 }
795 reader.Close()
796
797 if objInfo.Metadata.Get("X-Amz-Meta-Key-1") != "Val-1" {
798 t.Fatal("Expected metadata to be available but wasn't")
799 }
800
801 err = core.RemoveObject(context.Background(), bucketName, "my-objectname", RemoveObjectOptions{})
802 if err != nil {
803 t.Fatal("Error: ", err)
804 }
805 err = core.RemoveBucket(context.Background(), bucketName)
806 if err != nil {
807 t.Fatal("Error:", err)
808 }

Callers

nothing calls this directly

Calls 11

PutObjectMethod · 0.95
GetObjectMethod · 0.95
NewStaticV4Function · 0.92
NewCoreFunction · 0.85
MakeBucketMethod · 0.80
RemoveObjectMethod · 0.80
RemoveBucketMethod · 0.80
mustParseBoolFunction · 0.70
randStringFunction · 0.70
CloseMethod · 0.45
GetMethod · 0.45

Tested by

no test coverage detected