Test put object with streaming signature.
()
| 3878 | |
| 3879 | // Test put object with streaming signature. |
| 3880 | func testPutObjectStreaming() { |
| 3881 | // initialize logging params |
| 3882 | objectName := "test-object" |
| 3883 | startTime := time.Now() |
| 3884 | testName := getFuncName() |
| 3885 | function := "PutObject(bucketName, objectName, reader,size,opts)" |
| 3886 | args := map[string]interface{}{ |
| 3887 | "bucketName": "", |
| 3888 | "objectName": objectName, |
| 3889 | "size": -1, |
| 3890 | "opts": "", |
| 3891 | } |
| 3892 | |
| 3893 | c, err := NewClient(ClientConfig{}) |
| 3894 | if err != nil { |
| 3895 | logError(testName, function, args, startTime, "", "MinIO client object creation failed", err) |
| 3896 | return |
| 3897 | } |
| 3898 | |
| 3899 | // Generate a new random bucket name. |
| 3900 | bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-") |
| 3901 | args["bucketName"] = bucketName |
| 3902 | // Make a new bucket. |
| 3903 | err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}) |
| 3904 | if err != nil { |
| 3905 | logError(testName, function, args, startTime, "", "MakeBucket failed", err) |
| 3906 | return |
| 3907 | } |
| 3908 | |
| 3909 | defer cleanupBucket(bucketName, c) |
| 3910 | |
| 3911 | // Upload an object. |
| 3912 | sizes := []int64{0, 64*1024 - 1, 64 * 1024} |
| 3913 | |
| 3914 | for _, size := range sizes { |
| 3915 | data := newRandomReader(size, size) |
| 3916 | ui, err := c.PutObject(context.Background(), bucketName, objectName, data, int64(size), minio.PutObjectOptions{}) |
| 3917 | if err != nil { |
| 3918 | logError(testName, function, args, startTime, "", "PutObjectStreaming failed", err) |
| 3919 | return |
| 3920 | } |
| 3921 | |
| 3922 | if ui.Size != size { |
| 3923 | logError(testName, function, args, startTime, "", "PutObjectStreaming result has unexpected size", nil) |
| 3924 | return |
| 3925 | } |
| 3926 | |
| 3927 | objInfo, err := c.StatObject(context.Background(), bucketName, objectName, minio.StatObjectOptions{}) |
| 3928 | if err != nil { |
| 3929 | logError(testName, function, args, startTime, "", "StatObject failed", err) |
| 3930 | return |
| 3931 | } |
| 3932 | if objInfo.Size != size { |
| 3933 | logError(testName, function, args, startTime, "", "Unexpected size", err) |
| 3934 | return |
| 3935 | } |
| 3936 | |
| 3937 | } |
no test coverage detected