mirror of
https://github.com/minio/minio.git
synced 2025-04-29 06:08:00 -04:00
fix: tests error conditions should be used properly. (#4833)
This commit is contained in:
parent
b233345f19
commit
db5af1b126
@ -38,7 +38,8 @@ func (s *ErasureStorage) CreateFile(src io.Reader, volume, path string, buffer [
|
|||||||
errChans[i] = make(chan error, 1) // create buffered channel to let finished go-routines die early
|
errChans[i] = make(chan error, 1) // create buffered channel to let finished go-routines die early
|
||||||
}
|
}
|
||||||
|
|
||||||
blocks, n := [][]byte{}, len(buffer)
|
var blocks [][]byte
|
||||||
|
var n = len(buffer)
|
||||||
for n == len(buffer) {
|
for n == len(buffer) {
|
||||||
n, err = io.ReadFull(src, buffer)
|
n, err = io.ReadFull(src, buffer)
|
||||||
if n == 0 && err == io.EOF {
|
if n == 0 && err == io.EOF {
|
||||||
|
@ -82,10 +82,6 @@ func TestErasureCreateFile(t *testing.T) {
|
|||||||
setup.Remove()
|
setup.Remove()
|
||||||
t.Fatalf("Test %d: failed to generate random test data: %v", i, err)
|
t.Fatalf("Test %d: failed to generate random test data: %v", i, err)
|
||||||
}
|
}
|
||||||
algorithm := test.algorithm
|
|
||||||
if !algorithm.Available() {
|
|
||||||
algorithm = DefaultBitrotAlgorithm
|
|
||||||
}
|
|
||||||
file, err := storage.CreateFile(bytes.NewReader(data[test.offset:]), "testbucket", "object", buffer, test.algorithm, test.dataBlocks+1)
|
file, err := storage.CreateFile(bytes.NewReader(data[test.offset:]), "testbucket", "object", buffer, test.algorithm, test.dataBlocks+1)
|
||||||
if err != nil && !test.shouldFail {
|
if err != nil && !test.shouldFail {
|
||||||
t.Errorf("Test %d: should pass but failed with: %v", i, err)
|
t.Errorf("Test %d: should pass but failed with: %v", i, err)
|
||||||
|
@ -229,7 +229,7 @@ func testObjectAPIPutObjectDiskNotFound(obj ObjectLayer, instanceType string, di
|
|||||||
sha256sum := ""
|
sha256sum := ""
|
||||||
for i, testCase := range testCases {
|
for i, testCase := range testCases {
|
||||||
objInfo, actualErr := obj.PutObject(testCase.bucketName, testCase.objName, testCase.intputDataSize, bytes.NewReader(testCase.inputData), testCase.inputMeta, sha256sum)
|
objInfo, actualErr := obj.PutObject(testCase.bucketName, testCase.objName, testCase.intputDataSize, bytes.NewReader(testCase.inputData), testCase.inputMeta, sha256sum)
|
||||||
actualErr = errorCause(err)
|
actualErr = errorCause(actualErr)
|
||||||
if actualErr != nil && testCase.shouldPass {
|
if actualErr != nil && testCase.shouldPass {
|
||||||
t.Errorf("Test %d: %s: Expected to pass, but failed with: <ERROR> %s.", i+1, instanceType, actualErr.Error())
|
t.Errorf("Test %d: %s: Expected to pass, but failed with: <ERROR> %s.", i+1, instanceType, actualErr.Error())
|
||||||
}
|
}
|
||||||
|
@ -350,7 +350,8 @@ func TestDisksWithAllParts(t *testing.T) {
|
|||||||
// make data with more than one part
|
// make data with more than one part
|
||||||
partCount := 3
|
partCount := 3
|
||||||
data := bytes.Repeat([]byte("a"), int(globalPutPartSize)*partCount)
|
data := bytes.Repeat([]byte("a"), int(globalPutPartSize)*partCount)
|
||||||
xlDisks := obj.(*xlObjects).storageDisks
|
xl := obj.(*xlObjects)
|
||||||
|
xlDisks := xl.storageDisks
|
||||||
|
|
||||||
err = obj.MakeBucketWithLocation("bucket", "")
|
err = obj.MakeBucketWithLocation("bucket", "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -363,8 +364,8 @@ func TestDisksWithAllParts(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
partsMetadata, errs := readAllXLMetadata(xlDisks, bucket, object)
|
partsMetadata, errs := readAllXLMetadata(xlDisks, bucket, object)
|
||||||
if err != nil {
|
if reducedErr := reduceReadQuorumErrs(errs, objectOpIgnoredErrs, xl.readQuorum); reducedErr != nil {
|
||||||
t.Fatalf("Failed to read xl meta data %v", err)
|
t.Fatalf("Failed to read xl meta data %v", reducedErr)
|
||||||
}
|
}
|
||||||
|
|
||||||
diskFailures := make(map[int]string)
|
diskFailures := make(map[int]string)
|
||||||
|
@ -738,15 +738,14 @@ func (xl xlObjects) PutObjectPart(bucket, object, uploadID string, partID int, s
|
|||||||
if onlineDisks, err = writeUniqueXLMetadata(onlineDisks, minioMetaTmpBucket, tempXLMetaPath, partsMetadata, xl.writeQuorum); err != nil {
|
if onlineDisks, err = writeUniqueXLMetadata(onlineDisks, minioMetaTmpBucket, tempXLMetaPath, partsMetadata, xl.writeQuorum); err != nil {
|
||||||
return pi, toObjectErr(err, minioMetaTmpBucket, tempXLMetaPath)
|
return pi, toObjectErr(err, minioMetaTmpBucket, tempXLMetaPath)
|
||||||
}
|
}
|
||||||
var rErr error
|
|
||||||
onlineDisks, rErr = commitXLMetadata(onlineDisks, minioMetaTmpBucket, tempXLMetaPath, minioMetaMultipartBucket, uploadIDPath, xl.writeQuorum)
|
if _, err = commitXLMetadata(onlineDisks, minioMetaTmpBucket, tempXLMetaPath, minioMetaMultipartBucket, uploadIDPath, xl.writeQuorum); err != nil {
|
||||||
if rErr != nil {
|
return pi, toObjectErr(err, minioMetaMultipartBucket, uploadIDPath)
|
||||||
return pi, toObjectErr(rErr, minioMetaMultipartBucket, uploadIDPath)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fi, err := xl.statPart(bucket, object, uploadID, partSuffix)
|
fi, err := xl.statPart(bucket, object, uploadID, partSuffix)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return pi, toObjectErr(rErr, minioMetaMultipartBucket, partSuffix)
|
return pi, toObjectErr(err, minioMetaMultipartBucket, partSuffix)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Return success.
|
// Return success.
|
||||||
@ -1029,7 +1028,7 @@ func (xl xlObjects) CompleteMultipartUpload(bucket string, object string, upload
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Rename the multipart object to final location.
|
// Rename the multipart object to final location.
|
||||||
if onlineDisks, err = renameObject(onlineDisks, minioMetaMultipartBucket, uploadIDPath, bucket, object, xl.writeQuorum); err != nil {
|
if _, err = renameObject(onlineDisks, minioMetaMultipartBucket, uploadIDPath, bucket, object, xl.writeQuorum); err != nil {
|
||||||
return oi, toObjectErr(err, bucket, object)
|
return oi, toObjectErr(err, bucket, object)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -98,7 +98,7 @@ func (xl xlObjects) CopyObject(srcBucket, srcObject, dstBucket, dstObject string
|
|||||||
return oi, toObjectErr(err, srcBucket, srcObject)
|
return oi, toObjectErr(err, srcBucket, srcObject)
|
||||||
}
|
}
|
||||||
// Rename atomically `xl.json` from tmp location to destination for each disk.
|
// Rename atomically `xl.json` from tmp location to destination for each disk.
|
||||||
if onlineDisks, err = renameXLMetadata(onlineDisks, minioMetaTmpBucket, tempObj, srcBucket, srcObject, xl.writeQuorum); err != nil {
|
if _, err = renameXLMetadata(onlineDisks, minioMetaTmpBucket, tempObj, srcBucket, srcObject, xl.writeQuorum); err != nil {
|
||||||
return oi, toObjectErr(err, srcBucket, srcObject)
|
return oi, toObjectErr(err, srcBucket, srcObject)
|
||||||
}
|
}
|
||||||
return xlMeta.ToObjectInfo(srcBucket, srcObject), nil
|
return xlMeta.ToObjectInfo(srcBucket, srcObject), nil
|
||||||
@ -680,8 +680,7 @@ func (xl xlObjects) PutObject(bucket string, object string, size int64, data io.
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Rename the successfully written temporary object to final location.
|
// Rename the successfully written temporary object to final location.
|
||||||
onlineDisks, err = renameObject(onlineDisks, minioMetaTmpBucket, tempObj, bucket, object, xl.writeQuorum)
|
if _, err = renameObject(onlineDisks, minioMetaTmpBucket, tempObj, bucket, object, xl.writeQuorum); err != nil {
|
||||||
if err != nil {
|
|
||||||
return ObjectInfo{}, toObjectErr(err, bucket, object)
|
return ObjectInfo{}, toObjectErr(err, bucket, object)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user