diff --git a/fakestorage/object.go b/fakestorage/object.go index 853fb2dc81..35687fa77b 100644 --- a/fakestorage/object.go +++ b/fakestorage/object.go @@ -624,12 +624,12 @@ func (s *Server) rewriteObject(r *http.Request) jsonResponse { Content: append([]byte(nil), obj.Content...), } - _, err = s.createObject(newObject) + created, err := s.createObject(newObject) if err != nil { return errToJsonResponse(err) } - return jsonResponse{data: newObjectRewriteResponse(newObject.ObjectAttrs)} + return jsonResponse{data: newObjectRewriteResponse(created.ObjectAttrs)} } func (s *Server) downloadObject(w http.ResponseWriter, r *http.Request) { diff --git a/fakestorage/object_test.go b/fakestorage/object_test.go index 819919a13a..ac76a7a146 100644 --- a/fakestorage/object_test.go +++ b/fakestorage/object_test.go @@ -1136,6 +1136,9 @@ func TestServiceClientRewriteObject(t *testing.T) { if !bytes.Equal(attrs.MD5, hash) { t.Errorf("wrong hash returned\nwant %d\ngot %d", hash, attrs.MD5) } + if attrs.Generation == 0 { + t.Errorf("Generation was zero, expected non-zero") + } obj, err := server.GetObject(test.bucketName, test.objectName) if err != nil { t.Fatal(err) @@ -1268,6 +1271,9 @@ func TestServiceClientRewriteObjectWithGenerations(t *testing.T) { if !bytes.Equal(attrs.MD5, expectedHash) { t.Errorf("wrong hash returned\nwant %d\ngot %d", expectedHash, attrs.MD5) } + if attrs.Generation == 0 { + t.Errorf("Generation was zero, expected non-zero") + } obj, err := server.GetObject(test.bucketName, test.objectName) if err != nil { t.Fatal(err)