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

Function testRemoveObjectsWithVersioning

functional_tests.go:1760–1839  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1758}
1759
1760func testRemoveObjectsWithVersioning() {
1761 // initialize logging params
1762 startTime := time.Now()
1763 testName := getFuncName()
1764 function := "DeleteObjects()"
1765 args := map[string]interface{}{}
1766
1767 c, err := NewClient(ClientConfig{})
1768 if err != nil {
1769 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
1770 return
1771 }
1772
1773 // Generate a new random bucket name.
1774 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
1775 args["bucketName"] = bucketName
1776
1777 // Make a new bucket.
1778 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1", ObjectLocking: true})
1779 if err != nil {
1780 logError(testName, function, args, startTime, "", "Make bucket failed", err)
1781 return
1782 }
1783
1784 err = c.EnableVersioning(context.Background(), bucketName)
1785 if err != nil {
1786 logError(testName, function, args, startTime, "", "Enable versioning failed", err)
1787 return
1788 }
1789
1790 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
1791 args["objectName"] = objectName
1792
1793 _, err = c.PutObject(context.Background(), bucketName, objectName, getDataReader("datafile-10-kB"), int64(dataFileMap["datafile-10-kB"]), minio.PutObjectOptions{})
1794 if err != nil {
1795 logError(testName, function, args, startTime, "", "PutObject failed", err)
1796 return
1797 }
1798
1799 objectsVersions := make(chan minio.ObjectInfo)
1800 go func() {
1801 objectsVersionsInfo := c.ListObjects(context.Background(), bucketName,
1802 minio.ListObjectsOptions{WithVersions: true, Recursive: true})
1803 for info := range objectsVersionsInfo {
1804 if info.Err != nil {
1805 logError(testName, function, args, startTime, "", "Unexpected error during listing objects", err)
1806 return
1807 }
1808 objectsVersions <- info
1809 }
1810 close(objectsVersions)
1811 }()
1812
1813 removeErrors := c.RemoveObjects(context.Background(), bucketName, objectsVersions, minio.RemoveObjectsOptions{})
1814 if err != nil {
1815 logError(testName, function, args, startTime, "", "DeleteObjects call failed", err)
1816 return
1817 }

Callers 1

mainFunction · 0.85

Calls 12

MakeBucketMethod · 0.95
EnableVersioningMethod · 0.95
PutObjectMethod · 0.95
ListObjectsMethod · 0.95
RemoveObjectsMethod · 0.95
RemoveBucketMethod · 0.95
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
getDataReaderFunction · 0.85
logSuccessFunction · 0.85
randStringFunction · 0.70

Tested by

no test coverage detected