Skip to content

Commit

Permalink
storage: unflake TestIntegration_RequesterPays
Browse files Browse the repository at this point in the history
Using unique object name for every operation to fix flakey

Fixes googleapis#1753

Change-Id: I1971183a6d55db38b6a30e1be94f1139f57aa565
  • Loading branch information
AlisskaPie committed Jun 11, 2020
1 parent c5214b1 commit 568072c
Showing 1 changed file with 15 additions and 17 deletions.
32 changes: 15 additions & 17 deletions storage/integration_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1939,8 +1939,6 @@ func TestIntegration_RequesterPays(t *testing.T) {
// - (1b) must have serviceusage.services.use permission (Editor role) on (3b).
// - (1b) must NOT have that permission on (3a).
// - (1a) must NOT have that permission on (3b).

t.Skip("https://github.com/googleapis/google-cloud-go/issues/1753")
const wantErrorCode = 400

ctx := context.Background()
Expand Down Expand Up @@ -2056,18 +2054,18 @@ func TestIntegration_RequesterPays(t *testing.T) {
}
// Object operations.
call("write object", func(b *BucketHandle) error {
return writeObject(ctx, b.Object("foo"), "text/plain", []byte("hello"))
return writeObject(ctx, b.Object("objWrite"), "text/plain", []byte("hello"))
})
call("read object", func(b *BucketHandle) error {
_, err := readObject(ctx, b.Object("foo"))
_, err := readObject(ctx, b.Object("objRead"))
return err
})
call("object attrs", func(b *BucketHandle) error {
_, err := b.Object("foo").Attrs(ctx)
_, err := b.Object("objAttrs").Attrs(ctx)
return err
})
call("update object", func(b *BucketHandle) error {
_, err := b.Object("foo").Update(ctx, ObjectAttrsToUpdate{ContentLanguage: "en"})
_, err := b.Object("objUpdate").Update(ctx, ObjectAttrsToUpdate{ContentLanguage: "en"})
return err
})

Expand Down Expand Up @@ -2104,39 +2102,39 @@ func TestIntegration_RequesterPays(t *testing.T) {
return err
})
call("object acl set", func(b *BucketHandle) error {
return b.Object("foo").ACL().Set(ctx, entity, RoleReader)
return b.Object("objACLSet").ACL().Set(ctx, entity, RoleReader)
})
call("object acl list", func(b *BucketHandle) error {
_, err := b.Object("foo").ACL().List(ctx)
_, err := b.Object("objACLList").ACL().List(ctx)
return err
})
call("object acl delete", func(b *BucketHandle) error {
err := b.Object("foo").ACL().Delete(ctx, entity)
err := b.Object("objACLDelete").ACL().Delete(ctx, entity)
if errCode(err) == 404 {
return nil
}
return err
})

// Copy and compose.
call("copy", func(b *BucketHandle) error {
_, err := b.Object("copy").CopierFrom(b.Object("foo")).Run(ctx)
call("objCopy", func(b *BucketHandle) error {
_, err := b.Object("objCopy").CopierFrom(b.Object("objCopierFrom")).Run(ctx)
return err
})
call("compose", func(b *BucketHandle) error {
_, err := b.Object("compose").ComposerFrom(b.Object("foo"), b.Object("copy")).Run(ctx)
call("objCompose", func(b *BucketHandle) error {
_, err := b.Object("objCompose").ComposerFrom(b.Object("objComposerFrom"), b.Object("objCopyComposer")).Run(ctx)
return err
})
call("delete object", func(b *BucketHandle) error {
// Make sure the object exists, so we don't get confused by ErrObjectNotExist.
// The storage service may perform validation in any order (perhaps in parallel),
// so if we delete an object that doesn't exist and for which we lack permission,
// we could see either of those two errors. (See Google-internal bug 78341001.)
h.mustWrite(b1.Object("foo").NewWriter(ctx), []byte("hello")) // note: b1, not b.
return b.Object("foo").Delete(ctx)
h.mustWrite(b1.Object("objDelete").NewWriter(ctx), []byte("hello")) // note: b1, not b.
return b.Object("objWrite").Delete(ctx)
})
b1.Object("foo").Delete(ctx) // Make sure object is deleted.
for _, obj := range []string{"copy", "compose"} {
b1.Object("objDelete").Delete(ctx) // Make sure object is deleted.
for _, obj := range []string{"objRead", "objAttrs", "objUpdate", "objACLSet", "objACLList", "objACLDelete", "objCopy", "objCompose", "objComposerFrom", "objCopyComposer", "objCopierFrom"} {
if err := b1.UserProject(projID).Object(obj).Delete(ctx); err != nil {
t.Fatalf("could not delete %q: %v", obj, err)
}
Expand Down

0 comments on commit 568072c

Please sign in to comment.