Add unit test for parse completemultipart upload response
This commit is contained in:
parent
a36b8b036f
commit
512c455fde
@ -18,6 +18,7 @@ xmlParserTests = testGroup "XML Parser Tests"
|
||||
, testCase "Test parseNewMultipartUpload" testParseNewMultipartUpload
|
||||
, testCase "Test parseListObjectsResponse" testParseListObjectsResult
|
||||
, testCase "Test parseListUploadsresponse" testParseListIncompleteUploads
|
||||
, testCase "Test parseCompleteMultipartUploadResponse" testParseCompleteMultipartUploadResponse
|
||||
]
|
||||
|
||||
testParseLocation :: Assertion
|
||||
@ -146,3 +147,21 @@ testParseListIncompleteUploads = do
|
||||
case parsedListUploadsResult of
|
||||
Right listUploadsResult -> listUploadsResult @?= expectedListResult
|
||||
_ -> assertFailure $ "Parsing failed => " ++ show parsedListUploadsResult
|
||||
|
||||
|
||||
testParseCompleteMultipartUploadResponse :: Assertion
|
||||
testParseCompleteMultipartUploadResponse = do
|
||||
let
|
||||
xmldata = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\
|
||||
\<CompleteMultipartUploadResult xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\">\
|
||||
\<Location>http://Example-Bucket.s3.amazonaws.com/Example-Object</Location>\
|
||||
\<Bucket>Example-Bucket</Bucket>\
|
||||
\<Key>Example-Object</Key>\
|
||||
\<ETag>\"3858f62230ac3c915f300c664312c11f-9\"</ETag>\
|
||||
\</CompleteMultipartUploadResult>"
|
||||
expectedETag = "\"3858f62230ac3c915f300c664312c11f-9\""
|
||||
|
||||
parsedETagE <- runExceptT $ parseCompleteMultipartUploadResponse xmldata
|
||||
case parsedETagE of
|
||||
Right actualETag -> actualETag @?= expectedETag
|
||||
_ -> assertFailure $ "Parsing failed => " ++ show parsedETagE
|
||||
|
||||
@ -127,9 +127,10 @@ liveServerUnitTests = testGroup "Unit tests against a live server"
|
||||
liftIO $ assertEqual "Objects match failed!" expected
|
||||
(map oiObject $ lorObjects res)
|
||||
|
||||
step "cleanup"
|
||||
step "Cleanup actions"
|
||||
forM_ [1..10::Int] $ \s ->
|
||||
deleteObject bucket (T.concat ["lsb-release", T.pack (show s)])
|
||||
|
||||
, funTestWithBucket "Basic listMultipartUploads Test" "testbucket4" $ \step bucket -> do
|
||||
let object = "newmpupload"
|
||||
step "create 10 multipart uploads"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user