Skip to content

Commit 3b405ad

Browse files
committed
test(logging): re-enable ITSinkTest and scope sink cleanup to test prefix
Fixes b/482174880 (GitHub Issue #11906) by ensuring setUp() only cleans up leaked test sinks matching TEST_SINK_PREFIX, avoiding PERMISSION_DENIED errors on immutable built-in system sinks (_Required, _Default). Also wraps test verification logic in try...finally blocks for robust self-cleanup. BUG=b/482174880 TAG=agy CONV=d4a74f94-579a-4c3f-96c3-f90fcbc6c699
1 parent a88c83f commit 3b405ad

1 file changed

Lines changed: 22 additions & 15 deletions

File tree

  • java-logging/google-cloud-logging/src/test/java/com/google/cloud/logging/it

java-logging/google-cloud-logging/src/test/java/com/google/cloud/logging/it/ITSinkTest.java

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,12 @@
3434
import java.util.Iterator;
3535
import java.util.Set;
3636
import org.junit.BeforeClass;
37-
import org.junit.Ignore;
3837
import org.junit.Test;
3938

4039
public class ITSinkTest extends BaseSystemTest {
4140

41+
private static final String TEST_SINK_PREFIX = "test-";
42+
4243
@BeforeClass
4344
public static void setUp() {
4445
// Cleanup all stucked sinks if any
@@ -47,6 +48,9 @@ public static void setUp() {
4748
Iterator<Sink> iterator = sinkPage.iterateAll().iterator();
4849
while (iterator.hasNext()) {
4950
Sink sink = iterator.next();
51+
if (!sink.getName().startsWith(TEST_SINK_PREFIX)) {
52+
continue;
53+
}
5054
try {
5155
sink.delete();
5256
} catch (Exception ex) {
@@ -56,7 +60,6 @@ public static void setUp() {
5660
}
5761

5862
@Test
59-
@Ignore
6063
public void testCreateGetUpdateAndDeleteSink() {
6164
String name = formatForTest("test-create-get-update-sink");
6265
SinkInfo sinkInfo =
@@ -65,19 +68,23 @@ public void testCreateGetUpdateAndDeleteSink() {
6568
.setVersionFormat(SinkInfo.VersionFormat.V2)
6669
.build();
6770
Sink sink = logging.create(sinkInfo);
68-
assertEquals(name, sink.getName());
69-
assertEquals(SinkInfo.VersionFormat.V2, sink.getVersionFormat());
70-
assertEquals("severity>=ERROR", sink.getFilter());
71-
SinkInfo.Destination.DatasetDestination datasetDestination = sink.getDestination();
72-
assertEquals(logging.getOptions().getProjectId(), datasetDestination.getProject());
73-
assertEquals("dataset", datasetDestination.getDataset());
74-
assertEquals(sink, logging.getSink(name));
75-
sink = sink.toBuilder().setFilter("severity<=ERROR").build().update();
76-
assertEquals(name, sink.getName());
77-
assertEquals(SinkInfo.VersionFormat.V2, sink.getVersionFormat());
78-
assertEquals("severity<=ERROR", sink.getFilter());
79-
assertTrue(sink.delete());
80-
assertFalse(sink.delete());
71+
try {
72+
assertEquals(name, sink.getName());
73+
assertEquals(SinkInfo.VersionFormat.V2, sink.getVersionFormat());
74+
assertEquals("severity>=ERROR", sink.getFilter());
75+
SinkInfo.Destination.DatasetDestination datasetDestination = sink.getDestination();
76+
assertEquals(logging.getOptions().getProjectId(), datasetDestination.getProject());
77+
assertEquals("dataset", datasetDestination.getDataset());
78+
assertEquals(sink, logging.getSink(name));
79+
sink = sink.toBuilder().setFilter("severity<=ERROR").build().update();
80+
assertEquals(name, sink.getName());
81+
assertEquals(SinkInfo.VersionFormat.V2, sink.getVersionFormat());
82+
assertEquals("severity<=ERROR", sink.getFilter());
83+
assertTrue(sink.delete());
84+
assertFalse(sink.delete());
85+
} finally {
86+
logging.deleteSink(name);
87+
}
8188
}
8289

8390
@Test

0 commit comments

Comments
 (0)