Skip to content

Commit df92bf0

Browse files
authored
test: update ITObjectTest copy tests to delete blobid instead of blob name (#3131)
This will have the generation present making the delete idempotent and retryable.
1 parent 2a4499d commit df92bf0

File tree

1 file changed

+49
-44
lines changed

1 file changed

+49
-44
lines changed

google-cloud-storage/src/test/java/com/google/cloud/storage/it/ITObjectTest.java

Lines changed: 49 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -902,13 +902,14 @@ public void testCopyBlob() {
902902
String targetBlobName = generator.randomObjectName() + "-target";
903903
CopyRequest req = CopyRequest.of(source, BlobId.of(bucket.getName(), targetBlobName));
904904
CopyWriter copyWriter = storage.copy(req);
905-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
906-
assertEquals(targetBlobName, copyWriter.getResult().getName());
907-
assertEquals(CONTENT_TYPE, copyWriter.getResult().getContentType());
908-
assertEquals(metadata, copyWriter.getResult().getMetadata());
905+
Blob gen1 = copyWriter.getResult();
906+
assertEquals(bucket.getName(), gen1.getBucket());
907+
assertEquals(targetBlobName, gen1.getName());
908+
assertEquals(CONTENT_TYPE, gen1.getContentType());
909+
assertEquals(metadata, gen1.getMetadata());
909910
assertTrue(copyWriter.isDone());
910911
assertTrue(remoteBlob.delete());
911-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
912+
assertTrue(storage.delete(gen1.getBlobId()));
912913
}
913914

914915
@Test
@@ -959,14 +960,15 @@ public void testCopyBlobWithPredefinedAcl() {
959960
BlobTargetOption.predefinedAcl(PredefinedAcl.PUBLIC_READ))
960961
.build();
961962
CopyWriter copyWriter = storage.copy(req);
962-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
963-
assertEquals(targetBlobName, copyWriter.getResult().getName());
964-
assertEquals(CONTENT_TYPE, copyWriter.getResult().getContentType());
965-
assertEquals(metadata, copyWriter.getResult().getMetadata());
966-
assertNotNull(copyWriter.getResult().getAcl(User.ofAllUsers()));
963+
Blob gen1 = copyWriter.getResult();
964+
assertEquals(bucket.getName(), gen1.getBucket());
965+
assertEquals(targetBlobName, gen1.getName());
966+
assertEquals(CONTENT_TYPE, gen1.getContentType());
967+
assertEquals(metadata, gen1.getMetadata());
968+
assertNotNull(gen1.getAcl(User.ofAllUsers()));
967969
assertTrue(copyWriter.isDone());
968970
assertTrue(remoteBlob.delete());
969-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
971+
assertTrue(storage.delete(gen1.getBlobId()));
970972
}
971973

972974
@Test
@@ -987,36 +989,38 @@ public void testCopyBlobWithEncryptionKeys() {
987989
.setContentType(CONTENT_TYPE)
988990
.setMetadata(metadata)
989991
.build();
990-
CopyRequest req =
992+
CopyRequest req1 =
991993
CopyRequest.newBuilder()
992994
.setSource(source)
993995
.setTarget(target, BlobTargetOption.encryptionKey(OTHER_BASE64_KEY))
994996
.setSourceOptions(BlobSourceOption.decryptionKey(BASE64_KEY))
995997
.build();
996-
CopyWriter copyWriter = storage.copy(req);
997-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
998-
assertEquals(targetBlobName, copyWriter.getResult().getName());
999-
assertEquals(CONTENT_TYPE, copyWriter.getResult().getContentType());
998+
CopyWriter copyWriter1 = storage.copy(req1);
999+
Blob copy1Gen1 = copyWriter1.getResult();
1000+
assertEquals(bucket.getName(), copy1Gen1.getBucket());
1001+
assertEquals(targetBlobName, copy1Gen1.getName());
1002+
assertEquals(CONTENT_TYPE, copy1Gen1.getContentType());
10001003
assertArrayEquals(
10011004
BLOB_BYTE_CONTENT,
1002-
copyWriter.getResult().getContent(Blob.BlobSourceOption.decryptionKey(OTHER_BASE64_KEY)));
1003-
assertEquals(metadata, copyWriter.getResult().getMetadata());
1004-
assertTrue(copyWriter.isDone());
1005-
req =
1005+
copy1Gen1.getContent(Blob.BlobSourceOption.decryptionKey(OTHER_BASE64_KEY)));
1006+
assertEquals(metadata, copy1Gen1.getMetadata());
1007+
assertTrue(copyWriter1.isDone());
1008+
CopyRequest req2 =
10061009
CopyRequest.newBuilder()
10071010
.setSource(source)
10081011
.setTarget(target)
10091012
.setSourceOptions(BlobSourceOption.decryptionKey(BASE64_KEY))
10101013
.build();
1011-
copyWriter = storage.copy(req);
1012-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
1013-
assertEquals(targetBlobName, copyWriter.getResult().getName());
1014-
assertEquals(CONTENT_TYPE, copyWriter.getResult().getContentType());
1015-
assertArrayEquals(BLOB_BYTE_CONTENT, copyWriter.getResult().getContent());
1016-
assertEquals(metadata, copyWriter.getResult().getMetadata());
1017-
assertTrue(copyWriter.isDone());
1014+
CopyWriter copyWriter2 = storage.copy(req2);
1015+
Blob copy2Gen1 = copyWriter2.getResult();
1016+
assertEquals(bucket.getName(), copy2Gen1.getBucket());
1017+
assertEquals(targetBlobName, copy2Gen1.getName());
1018+
assertEquals(CONTENT_TYPE, copy2Gen1.getContentType());
1019+
assertArrayEquals(BLOB_BYTE_CONTENT, copy2Gen1.getContent());
1020+
assertEquals(metadata, copy2Gen1.getMetadata());
1021+
assertTrue(copyWriter2.isDone());
10181022
assertTrue(remoteBlob.delete());
1019-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
1023+
assertTrue(storage.delete(copy2Gen1.getBlobId()));
10201024
}
10211025

10221026
@Test
@@ -1035,13 +1039,14 @@ public void testCopyBlobUpdateMetadata() {
10351039
.build();
10361040
CopyRequest req = CopyRequest.of(source, target);
10371041
CopyWriter copyWriter = storage.copy(req);
1038-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
1039-
assertEquals(targetBlobName, copyWriter.getResult().getName());
1040-
assertEquals(CONTENT_TYPE, copyWriter.getResult().getContentType());
1041-
assertEquals(metadata, copyWriter.getResult().getMetadata());
1042+
Blob gen1 = copyWriter.getResult();
1043+
assertEquals(bucket.getName(), gen1.getBucket());
1044+
assertEquals(targetBlobName, gen1.getName());
1045+
assertEquals(CONTENT_TYPE, gen1.getContentType());
1046+
assertEquals(metadata, gen1.getMetadata());
10421047
assertTrue(copyWriter.isDone());
10431048
assertTrue(remoteSourceBlob.delete());
1044-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
1049+
assertTrue(storage.delete(gen1.getBlobId()));
10451050
}
10461051

10471052
@Test
@@ -1059,12 +1064,13 @@ public void testCopyBlobUpdateStorageClass() {
10591064
BlobInfo.newBuilder(bucket, targetBlobName).setStorageClass(StorageClass.COLDLINE).build();
10601065
CopyRequest req = CopyRequest.of(source, targetInfo);
10611066
CopyWriter copyWriter = storage.copy(req);
1062-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
1063-
assertEquals(targetBlobName, copyWriter.getResult().getName());
1064-
assertEquals(StorageClass.COLDLINE, copyWriter.getResult().getStorageClass());
1067+
Blob gen1 = copyWriter.getResult();
1068+
assertEquals(bucket.getName(), gen1.getBucket());
1069+
assertEquals(targetBlobName, gen1.getName());
1070+
assertEquals(StorageClass.COLDLINE, gen1.getStorageClass());
10651071
assertTrue(copyWriter.isDone());
10661072
assertTrue(remoteSourceBlob.delete());
1067-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
1073+
assertTrue(storage.delete(gen1.getBlobId()));
10681074
}
10691075

10701076
@Test
@@ -1079,15 +1085,14 @@ public void testCopyBlobNoContentType() {
10791085
BlobInfo target = BlobInfo.newBuilder(bucket, targetBlobName).setMetadata(metadata).build();
10801086
CopyRequest req = CopyRequest.of(source, target);
10811087
CopyWriter copyWriter = storage.copy(req);
1082-
assertEquals(bucket.getName(), copyWriter.getResult().getBucket());
1083-
assertEquals(targetBlobName, copyWriter.getResult().getName());
1084-
assertTrue(
1085-
copyWriter.getResult().getContentType() == null
1086-
|| copyWriter.getResult().getContentType().isEmpty());
1087-
assertEquals(metadata, copyWriter.getResult().getMetadata());
1088+
Blob gen1 = copyWriter.getResult();
1089+
assertEquals(bucket.getName(), gen1.getBucket());
1090+
assertEquals(targetBlobName, gen1.getName());
1091+
assertTrue(gen1.getContentType() == null || gen1.getContentType().isEmpty());
1092+
assertEquals(metadata, gen1.getMetadata());
10881093
assertTrue(copyWriter.isDone());
10891094
assertTrue(remoteSourceBlob.delete());
1090-
assertTrue(storage.delete(bucket.getName(), targetBlobName));
1095+
assertTrue(storage.delete(gen1.getBlobId()));
10911096
}
10921097

10931098
@Test

0 commit comments

Comments
 (0)