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

Function testFPutObjectContext

functional_tests.go:4802–4887  ·  view source on GitHub ↗

Tests FPutObject request when context cancels after timeout

()

Source from the content-addressed store, hash-verified

4800
4801// Tests FPutObject request when context cancels after timeout
4802func testFPutObjectContext() {
4803 // initialize logging params
4804 startTime := time.Now()
4805 testName := getFuncName()
4806 function := "FPutObject(bucketName, objectName, fileName, opts)"
4807 args := map[string]interface{}{
4808 "bucketName": "",
4809 "objectName": "",
4810 "fileName": "",
4811 "opts": "",
4812 }
4813
4814 c, err := NewClient(ClientConfig{})
4815 if err != nil {
4816 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
4817 return
4818 }
4819
4820 // Generate a new random bucket name.
4821 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
4822 args["bucketName"] = bucketName
4823
4824 // Make a new bucket.
4825 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"})
4826 if err != nil {
4827 logError(testName, function, args, startTime, "", "MakeBucket failed", err)
4828 return
4829 }
4830
4831 defer cleanupBucket(bucketName, c)
4832
4833 // Upload 1 parts worth of data to use multipart upload.
4834 // Use different data in part for multipart tests to check parts are uploaded in correct order.
4835 fName := getMintDataDirFilePath("datafile-1-MB")
4836 if fName == "" {
4837 // Make a temp file with 1 MiB bytes of data.
4838 file, err := os.CreateTemp(os.TempDir(), "FPutObjectContextTest")
4839 if err != nil {
4840 logError(testName, function, args, startTime, "", "TempFile creation failed", err)
4841 return
4842 }
4843
4844 // Upload 1 parts to trigger multipart upload
4845 if _, err = io.Copy(file, getDataReader("datafile-1-MB")); err != nil {
4846 logError(testName, function, args, startTime, "", "File copy failed", err)
4847 return
4848 }
4849 // Close the file pro-actively for windows.
4850 if err = file.Close(); err != nil {
4851 logError(testName, function, args, startTime, "", "File close failed", err)
4852 return
4853 }
4854 defer os.Remove(file.Name())
4855 fName = file.Name()
4856 }
4857
4858 // Set base object name
4859 objectName := bucketName + "FPutObjectContext"

Callers 1

mainFunction · 0.85

Calls 13

MakeBucketMethod · 0.95
FPutObjectMethod · 0.95
StatObjectMethod · 0.95
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
cleanupBucketFunction · 0.85
getMintDataDirFilePathFunction · 0.85
getDataReaderFunction · 0.85
logSuccessFunction · 0.85
randStringFunction · 0.70
CloseMethod · 0.45

Tested by

no test coverage detected