Jiabao-Sun commented on code in PR #22789: URL: https://github.com/apache/flink/pull/22789#discussion_r1722574780
########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/GSFileSystemScenarioTest.java: ########## @@ -148,31 +147,31 @@ public void simpleWriteTest() throws IOException { // there should be a single blob now, in the specified temporary bucket or, if no temporary // bucket // specified, in the final bucket - assertEquals(1, storage.blobs.size()); + assertThat(storage.blobs.size()).isOne(); Review Comment: ```suggestion assertThat(storage.blobs).hasSize(1); ``` Using `hasSize` would be more concise. There are a few same cases in this class. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/utils/ConfigUtilsStorageTest.java: ########## @@ -32,29 +34,30 @@ import java.util.HashMap; import java.util.Optional; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.assertj.core.api.Assertions.assertThat; /** Test construction of Storage instance in GSFileSystemFactory. */ -@RunWith(Parameterized.class) +@ExtendWith(ParameterizedTestExtension.class) public class ConfigUtilsStorageTest { Review Comment: ```suggestion class ConfigUtilsStorageTest { ``` Fileds annotated by `@Parameter @Parameters` can be private. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSChecksumWriteChannelTest.java: ########## @@ -91,7 +93,7 @@ public static Collection<Object[]> data() { private GSBlobIdentifier blobIdentifier; - @Before + @BeforeEach public void before() throws IOException { Review Comment: ```suggestion void before() throws IOException { ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSChecksumWriteChannelTest.java: ########## @@ -34,29 +36,29 @@ import java.util.Random; import static org.apache.flink.fs.gs.TestUtils.RANDOM_SEED; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; /** Test {@link GSChecksumWriteChannel}. */ -@RunWith(Parameterized.class) -public class GSChecksumWriteChannelTest { +@ExtendWith(ParameterizedTestExtension.class) +class GSChecksumWriteChannelTest { /* The sizes of each buffer of bytes used for writing. */ - @Parameterized.Parameter(value = 0) - public int[] bufferSizes; + @Parameter(value = 0) + int[] bufferSizes; /* The start positions in write buffers. */ - @Parameterized.Parameter(value = 1) - public int[] writeStarts; + @Parameter(value = 1) + int[] writeStarts; /* The length of each write. */ - @Parameterized.Parameter(value = 2) - public int[] writeLengths; + @Parameter(value = 2) + int[] writeLengths; - @Parameterized.Parameter(value = 3) - public String description; + @Parameter(value = 3) + String description; - @Parameterized.Parameters(name = "{3}") + @Parameters(name = "{3}") public static Collection<Object[]> data() { Review Comment: ```suggestion private static Collection<Object[]> data() { ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSRecoverableFsDataOutputStreamTest.java: ########## @@ -39,33 +41,29 @@ import java.util.Random; import java.util.UUID; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertThrows; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; /** Test {@link GSResumeRecoverable}. */ -@RunWith(Parameterized.class) -public class GSRecoverableFsDataOutputStreamTest { +@ExtendWith(ParameterizedTestExtension.class) +class GSRecoverableFsDataOutputStreamTest { - @Parameterized.Parameter(value = 0) - public boolean empty; + @Parameter public boolean empty; Review Comment: Minimize the modifiers as well. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSResumeRecoverableSerializerTest.java: ########## @@ -70,7 +71,7 @@ public static Collection<Object[]> data() { }); } - @Test + @TestTemplate public void shouldSerdeState() throws IOException { Review Comment: Minimize the modifiers. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSResumeRecoverableSerializerTest.java: ########## @@ -89,14 +90,14 @@ public void shouldSerdeState() throws IOException { (GSResumeRecoverable) serializer.deserialize(serializer.getVersion(), serialized); // check that states match - assertEquals(bucketName, deserializedState.finalBlobIdentifier.bucketName); - assertEquals(objectName, deserializedState.finalBlobIdentifier.objectName); - assertEquals(position, deserializedState.position); - assertEquals(closed, deserializedState.closed); - assertEquals(componentCount, deserializedState.componentObjectIds.size()); + assertThat(deserializedState.finalBlobIdentifier.bucketName).isEqualTo(bucketName); + assertThat(deserializedState.finalBlobIdentifier.objectName).isEqualTo(objectName); + assertThat(deserializedState.position).isEqualTo(position); + assertThat(deserializedState.closed).isEqualTo(closed); + assertThat(deserializedState.componentObjectIds.size()).isEqualTo(componentCount); for (int i = 0; i < componentCount; i++) { - assertEquals( - state.componentObjectIds.get(i), deserializedState.componentObjectIds.get(i)); + assertThat(deserializedState.componentObjectIds.get(i)) + .isEqualTo(state.componentObjectIds.get(i)); } Review Comment: ```java assertThat(deserializedState.componentObjectIds).isEqualTo(state.componentObjectIds); ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSResumeRecoverableTest.java: ########## @@ -83,34 +84,38 @@ public static Collection<Object[]> data() { private GSBlobIdentifier blobIdentifier; - @Before + @BeforeEach public void before() { blobIdentifier = new GSBlobIdentifier("foo", "bar"); } - @Test + @TestTemplate public void shouldConstructProperly() { Review Comment: Minimize the modifiers. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSCommitRecoverableSerializerTest.java: ########## @@ -19,33 +19,34 @@ package org.apache.flink.fs.gs.writer; import org.apache.flink.fs.gs.storage.GSBlobIdentifier; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameter; +import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameters; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; +import org.junit.jupiter.api.TestTemplate; +import org.junit.jupiter.api.extension.ExtendWith; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.UUID; -import static org.junit.Assert.assertEquals; +import static org.assertj.core.api.Assertions.assertThat; /** Test recoverable writer serializer. */ -@RunWith(Parameterized.class) -public class GSCommitRecoverableSerializerTest { +@ExtendWith(ParameterizedTestExtension.class) +class GSCommitRecoverableSerializerTest { - @Parameterized.Parameter(value = 0) - public String bucketName; + @Parameter public String bucketName; - @Parameterized.Parameter(value = 1) + @Parameter(value = 1) public String objectName; - @Parameterized.Parameter(value = 2) + @Parameter(value = 2) public int componentCount; - @Parameterized.Parameters(name = "bucketName={0}, objectName={1}, componentCount={2}") + @Parameters(name = "bucketName={0}, objectName={1}, componentCount={2}") public static Collection<Object[]> data() { Review Comment: ```suggestion private static Collection<Object[]> data() { ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/GSFileSystemScenarioTest.java: ########## @@ -26,38 +26,37 @@ import org.apache.flink.fs.gs.storage.GSBlobIdentifier; import org.apache.flink.fs.gs.storage.MockBlobStorage; import org.apache.flink.fs.gs.writer.GSRecoverableWriter; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameter; +import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameters; import org.apache.flink.util.StringUtils; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.TestTemplate; +import org.junit.jupiter.api.extension.ExtendWith; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.Arrays; import java.util.Collection; import java.util.Random; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertThrows; -import static org.junit.Assume.assumeFalse; -import static org.junit.Assume.assumeTrue; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.assertj.core.api.Assumptions.assumeThat; /** Tests of various write and recovery scenarios. */ -@RunWith(Parameterized.class) -public class GSFileSystemScenarioTest { +@ExtendWith(ParameterizedTestExtension.class) +class GSFileSystemScenarioTest { /* The temporary bucket name to use. */ - @Parameterized.Parameter(value = 0) - public String temporaryBucketName; + @Parameter public String temporaryBucketName; /* The chunk size to use for writing to GCS. */ - @Parameterized.Parameter(value = 1) + @Parameter(value = 1) public MemorySize writeChunkSize; - @Parameterized.Parameters(name = "temporaryBucketName={0}") + @Parameters(name = "temporaryBucketName={0}") public static Collection<Object[]> data() { Review Comment: The `@Parameter, @Parameter` variable's modifier can be private now. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/GSFileSystemScenarioTest.java: ########## @@ -126,11 +125,11 @@ public void before() { } /* Test writing a single array of bytes to a stream. */ - @Test + @TestTemplate public void simpleWriteTest() throws IOException { Review Comment: `@BeforeEach @TestTemplate` method's modifier can be package default as well. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSCommitRecoverableSerializerTest.java: ########## @@ -60,7 +61,7 @@ public static Collection<Object[]> data() { }); } - @Test + @TestTemplate public void shouldSerdeState() throws IOException { Review Comment: ```suggestion void shouldSerdeState() throws IOException { ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/utils/ConfigUtilsHadoopTest.java: ########## @@ -20,53 +20,54 @@ import org.apache.flink.configuration.Configuration; import org.apache.flink.fs.gs.TestUtils; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameter; +import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameters; import org.apache.flink.shaded.guava32.com.google.common.collect.MapDifference; import org.apache.flink.shaded.guava32.com.google.common.collect.Maps; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; +import org.junit.jupiter.api.TestTemplate; +import org.junit.jupiter.api.extension.ExtendWith; import javax.annotation.Nullable; import java.util.Arrays; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.Map; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.assertj.core.api.Assertions.assertThat; /** Test construction of Hadoop config in GSFileSystemFactory. */ -@RunWith(Parameterized.class) -public class ConfigUtilsHadoopTest { +@ExtendWith(ParameterizedTestExtension.class) +class ConfigUtilsHadoopTest { /* The test case description. */ - @Parameterized.Parameter(value = 0) - public String description; + @Parameter public String description; /* The value to use for the HADOOP_CONF_DIR environment variable. */ - @Parameterized.Parameter(value = 1) - public @Nullable String envHadoopConfDir; + @Parameter(value = 1) + @Nullable + String envHadoopConfDir; /* The value to use for the Flink config. */ - @Parameterized.Parameter(value = 2) - public Configuration flinkConfig; + @Parameter(value = 2) + Configuration flinkConfig; /* The Hadoop resources to load from the config dir. */ - @Parameterized.Parameter(value = 3) - public org.apache.hadoop.conf.Configuration loadedHadoopConfig; + @Parameter(value = 3) + org.apache.hadoop.conf.Configuration loadedHadoopConfig; /* The expected Hadoop configuration directory. */ - @Parameterized.Parameter(value = 4) - public String expectedHadoopConfigDir; + @Parameter(value = 4) + String expectedHadoopConfigDir; /* The expected Hadoop configuration. */ - @Parameterized.Parameter(value = 5) - public org.apache.hadoop.conf.Configuration expectedHadoopConfig; + @Parameter(value = 5) + org.apache.hadoop.conf.Configuration expectedHadoopConfig; - @Parameterized.Parameters(name = "description={0}") + @Parameters(name = "description={0}") public static Collection<Object[]> data() { Review Comment: ```suggestion private static Collection<Object[]> data() { ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSChecksumWriteChannelTest.java: ########## @@ -124,7 +126,7 @@ public void before() throws IOException { * * @throws IOException On storage failure. */ - @Test + @TestTemplate public void shouldWriteProperly() throws IOException { Review Comment: ```suggestion void shouldWriteProperly() throws IOException { ``` There are some similar cases below. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSCommitRecoverableTest.java: ########## @@ -21,31 +21,33 @@ import org.apache.flink.configuration.Configuration; import org.apache.flink.fs.gs.GSFileSystemOptions; import org.apache.flink.fs.gs.storage.GSBlobIdentifier; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameter; +import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension; +import org.apache.flink.testutils.junit.extensions.parameterized.Parameters; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.TestTemplate; +import org.junit.jupiter.api.extension.ExtendWith; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.UUID; -import static org.junit.Assert.assertEquals; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; /** Test {@link GSResumeRecoverable}. */ -@RunWith(Parameterized.class) -public class GSCommitRecoverableTest { +@ExtendWith(ParameterizedTestExtension.class) +class GSCommitRecoverableTest { - @Parameterized.Parameter(value = 0) - public List<UUID> componentObjectIds; + @Parameter public List<UUID> componentObjectIds; Review Comment: Mininize the modifiers in this class. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSRecoverableFsDataOutputStreamTest.java: ########## @@ -133,57 +131,57 @@ public void before() { } } - @Test + @TestTemplate public void emptyStreamShouldHaveProperPositionAndComponentObjectCount() { if (empty) { - assertEquals(0, position); - assertEquals(0, componentObjectCount); + assertThat(position).isZero(); + assertThat(componentObjectCount).isZero(); } } - @Test + @TestTemplate public void shouldConstructStream() throws IOException { if (empty) { - assertEquals(0, fsDataOutputStream.getPos()); + assertThat(fsDataOutputStream.getPos()).isEqualTo(0); Review Comment: ```suggestion assertThat(fsDataOutputStream.getPos()).isZero(); ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSCommitRecoverableSerializerTest.java: ########## @@ -79,12 +80,12 @@ public void shouldSerdeState() throws IOException { (GSCommitRecoverable) serializer.deserialize(serializer.getVersion(), serialized); // check that states match - assertEquals(bucketName, deserializedState.finalBlobIdentifier.bucketName); - assertEquals(objectName, deserializedState.finalBlobIdentifier.objectName); - assertEquals(componentCount, deserializedState.componentObjectIds.size()); + assertThat(deserializedState.finalBlobIdentifier.bucketName).isEqualTo(bucketName); + assertThat(deserializedState.finalBlobIdentifier.objectName).isEqualTo(objectName); + assertThat(deserializedState.componentObjectIds.size()).isEqualTo(componentCount); for (int i = 0; i < componentCount; i++) { - assertEquals( - state.componentObjectIds.get(i), deserializedState.componentObjectIds.get(i)); + assertThat(deserializedState.componentObjectIds.get(i)) + .isEqualTo(state.componentObjectIds.get(i)); } Review Comment: ```java assertThat(deserializedState.componentObjectIds).isEqualTo(state.componentObjectIds); ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSRecoverableWriterTest.java: ########## @@ -81,7 +80,7 @@ public static Collection<Object[]> data() { private GSBlobIdentifier blobIdentifier; - @Before + @BeforeEach public void before() { Review Comment: Minimize the modifiers. ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSRecoverableWriterCommitterTest.java: ########## @@ -105,7 +104,7 @@ public static Collection<Object[]> data() { private GSBlobIdentifier blobIdentifier; - @Before + @BeforeEach public void before() { Review Comment: Minimize the modifiers. ########## flink-filesystems/flink-hadoop-fs/src/test/java/org/apache/flink/runtime/fs/hdfs/AbstractHadoopRecoverableWriterITCase.java: ########## @@ -117,15 +118,15 @@ private void cleanupLocalDir() throws Exception { } } - @After - public void cleanupAndCheckTmpCleanup() throws Exception { + @AfterEach + void cleanupAndCheckTmpCleanup() throws Exception { final String defaultTmpDir = getLocalTmpDir(); final java.nio.file.Path localTmpDir = Paths.get(defaultTmpDir); // delete local tmp dir. - Assert.assertTrue(Files.exists(localTmpDir)); + assertThat(Files.exists(localTmpDir)).isTrue(); Review Comment: ```suggestion assertThat(localTmpDir).exists(); ``` ########## flink-filesystems/flink-hadoop-fs/src/test/java/org/apache/flink/runtime/fs/hdfs/AbstractHadoopRecoverableWriterITCase.java: ########## @@ -117,15 +118,15 @@ private void cleanupLocalDir() throws Exception { } } - @After - public void cleanupAndCheckTmpCleanup() throws Exception { + @AfterEach + void cleanupAndCheckTmpCleanup() throws Exception { final String defaultTmpDir = getLocalTmpDir(); final java.nio.file.Path localTmpDir = Paths.get(defaultTmpDir); // delete local tmp dir. - Assert.assertTrue(Files.exists(localTmpDir)); + assertThat(Files.exists(localTmpDir)).isTrue(); try (Stream<java.nio.file.Path> files = Files.list(localTmpDir)) { - Assert.assertEquals(0L, files.count()); + assertThat(files.count()).isEqualTo(0L); Review Comment: ```suggestion assertThat(files).isEmpty(); ``` ########## flink-filesystems/flink-gs-fs-hadoop/src/test/java/org/apache/flink/fs/gs/writer/GSRecoverableWriterCommitterTest.java: ########## @@ -132,28 +131,29 @@ public void after() throws IOException { * * @throws IOException On underlying failure */ - @Test + @TestTemplate public void commitTest() throws IOException { GSRecoverableWriterCommitter committer = commitTestInternal(); committer.commit(); // there should be exactly one blob left, the final blob identifier. validate its contents. - assertEquals(1, blobStorage.blobs.size()); + assertThat(blobStorage.blobs.size()).isOne(); Review Comment: ```suggestion assertThat(blobStorage.blobs).hasSize(1); ``` ########## flink-filesystems/flink-oss-fs-hadoop/src/test/java/org/apache/flink/fs/osshadoop/HadoopOSSRecoverableWriterExceptionITCase.java: ########## @@ -36,14 +36,14 @@ * Tests for exception throwing in the {@link * org.apache.flink.fs.osshadoop.writer.OSSRecoverableWriter OSSRecoverableWriter}. */ -public class HadoopOSSRecoverableWriterExceptionITCase +class HadoopOSSRecoverableWriterExceptionITCase extends AbstractHadoopRecoverableWriterExceptionITCase { // ----------------------- OSS general configuration ----------------------- private static final int MAX_CONCURRENT_UPLOADS_VALUE = 2; - @BeforeClass + @BeforeAll public static void checkCredentialsAndSetup() throws IOException { Review Comment: ```suggestion static void checkCredentialsAndSetup() throws IOException { ``` ########## flink-filesystems/flink-oss-fs-hadoop/src/test/java/org/apache/flink/fs/osshadoop/HadoopOSSRecoverableWriterExceptionITCase.java: ########## @@ -36,14 +36,14 @@ * Tests for exception throwing in the {@link * org.apache.flink.fs.osshadoop.writer.OSSRecoverableWriter OSSRecoverableWriter}. */ -public class HadoopOSSRecoverableWriterExceptionITCase +class HadoopOSSRecoverableWriterExceptionITCase extends AbstractHadoopRecoverableWriterExceptionITCase { // ----------------------- OSS general configuration ----------------------- private static final int MAX_CONCURRENT_UPLOADS_VALUE = 2; - @BeforeClass + @BeforeAll public static void checkCredentialsAndSetup() throws IOException { Review Comment: ```suggestion static void checkCredentialsAndSetup() throws IOException { ``` ########## flink-filesystems/flink-s3-fs-presto/src/test/java/org/apache/flink/fs/s3presto/PrestoS3FileSystemITCase.java: ########## @@ -48,20 +44,12 @@ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html#ConsistencyModel">consistency * guarantees</a> and what the {@link com.facebook.presto.hive.s3.PrestoS3FileSystem} offers. */ -@RunWith(Parameterized.class) -public class PrestoS3FileSystemITCase extends AbstractHadoopFileSystemITTest { - - @Parameterized.Parameter public String scheme; - - @Parameterized.Parameters(name = "Scheme = {0}") - public static List<String> parameters() { - return Arrays.asList("s3", "s3p"); - } +class PrestoS3FileSystemITCase extends AbstractHadoopFileSystemITTest { Review Comment: Will we lose parameter tests? Additionally, can we check if the number of tests is consistent with the master branch? ########## flink-filesystems/flink-oss-fs-hadoop/src/test/java/org/apache/flink/fs/osshadoop/HadoopOSSRecoverableWriterITCase.java: ########## @@ -39,13 +39,13 @@ * Tests for the {@link org.apache.flink.fs.osshadoop.writer.OSSRecoverableWriter * OSSRecoverableWriter}. */ -public class HadoopOSSRecoverableWriterITCase extends AbstractHadoopRecoverableWriterITCase { +class HadoopOSSRecoverableWriterITCase extends AbstractHadoopRecoverableWriterITCase { // ----------------------- OSS general configuration ----------------------- private static final int MAX_CONCURRENT_UPLOADS_VALUE = 2; - @BeforeClass + @BeforeAll public static void checkCredentialsAndSetup() throws IOException { Review Comment: ```suggestion static void checkCredentialsAndSetup() throws IOException { ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org