mirror of
https://github.com/rustfs/rustfs.git
synced 2026-09-01 17:58:22 +00:00
fix(s3): return BadDigest for Content-MD5 mismatch (#6842)
This commit is contained in:
@@ -621,6 +621,21 @@ mod tests {
|
||||
assert_eq!(api_error.message, ApiError::error_code_to_message(&S3ErrorCode::BadDigest));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn content_md5_mismatch_io_errors_map_to_bad_digest() {
|
||||
let bad_digest = || rustfs_rio::BadDigest {
|
||||
expected_md5: "expected".to_string(),
|
||||
calculated_md5: "calculated".to_string(),
|
||||
};
|
||||
let api_error = ApiError::from(IoError::new(ErrorKind::InvalidData, bad_digest()));
|
||||
assert_eq!(api_error.code, S3ErrorCode::BadDigest);
|
||||
assert_eq!(api_error.message, ApiError::error_code_to_message(&S3ErrorCode::BadDigest));
|
||||
|
||||
let api_error = ApiError::from(StorageError::Io(IoError::new(ErrorKind::InvalidData, bad_digest())));
|
||||
assert_eq!(api_error.code, S3ErrorCode::BadDigest);
|
||||
assert_eq!(api_error.message, ApiError::error_code_to_message(&S3ErrorCode::BadDigest));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn upload_stream_sha256_mismatch_maps_to_bad_digest() {
|
||||
let api_error = ApiError::from(IoError::other(MockUploadStreamError::Sha256Mismatch));
|
||||
|
||||
Reference in New Issue
Block a user