@@ -2,6 +2,8 @@ package storage
22
33import (
44 "errors"
5+ "io"
6+ "strings"
57 "testing"
68
79 "github.com/arschles/assert"
@@ -50,3 +52,29 @@ func TestObjectExistsOtherErr(t *testing.T) {
5052 assert .Err (t , err , expectedErr )
5153 assert .False (t , exists , "object found when the statter errored" )
5254}
55+
56+ func TestUploadObjectSuccess (t * testing.T ) {
57+ rdr := strings .NewReader ("hello world!" )
58+ putter := & FakeObjectPutter {
59+ Fn : func (string , string , io.Reader , string ) (int64 , error ) {
60+ return 0 , nil
61+ },
62+ }
63+ assert .NoErr (t , UploadObject (putter , bucketName , objKey , rdr ))
64+ assert .Equal (t , len (putter .Calls ), 1 , "number of calls to PutObject" )
65+ assert .Equal (t , putter .Calls [0 ].BucketName , bucketName , "the bucket name" )
66+ assert .Equal (t , putter .Calls [0 ].ObjectKey , objKey , "the object key" )
67+ assert .Equal (t , putter .Calls [0 ].ContentType , octetStream , "the content type" )
68+ }
69+
70+ func TestUploadObjectFailure (t * testing.T ) {
71+ rdr := strings .NewReader ("hello world" )
72+ err := errors .New ("test error" )
73+ putter := & FakeObjectPutter {
74+ Fn : func (string , string , io.Reader , string ) (int64 , error ) {
75+ return 0 , err
76+ },
77+ }
78+ assert .Err (t , UploadObject (putter , bucketName , objKey , rdr ), err )
79+ assert .Equal (t , len (putter .Calls ), 1 , "number of calls to PutObject" )
80+ }
0 commit comments