You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by yh...@apache.org on 2025/06/28 21:34:20 UTC
(beam) branch master updated: Drop junit-dep dependency by removing system-rules usage (#35464)
This is an automated email from the ASF dual-hosted git repository.
yhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new 2ad4eeab657 Drop junit-dep dependency by removing system-rules usage (#35464)
2ad4eeab657 is described below
commit 2ad4eeab6574dcc60391f3d8fe50d072d68b31e3
Author: Steven van Rossum <st...@gmail.com>
AuthorDate: Sat Jun 28 23:34:14 2025 +0200
Drop junit-dep dependency by removing system-rules usage (#35464)
* Drop junit-dep dependency by removing system-rules usage
* Use explicit CharSet
* Run spotless
* Use encoding name instead of CharSet
* Set line separator as scanner delimiter
* Use hasItem matcher instead of contains matcher
* Minimize scope of stdout redirection
---
.../container/license_scripts/dep_urls_java.yaml | 4 ---
sdks/java/core/build.gradle | 2 --
.../apache/beam/sdk/fn/JvmInitializersTest.java | 30 +++++++++++++++++-----
3 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/sdks/java/container/license_scripts/dep_urls_java.yaml b/sdks/java/container/license_scripts/dep_urls_java.yaml
index 2ce07d7f153..89a113718e5 100644
--- a/sdks/java/container/license_scripts/dep_urls_java.yaml
+++ b/sdks/java/container/license_scripts/dep_urls_java.yaml
@@ -61,10 +61,6 @@ jackson-bom:
'2.15.4':
license: "https://raw.githubusercontent.com/FasterXML/jackson-bom/master/LICENSE"
type: "Apache License 2.0"
-junit-dep:
- '4.11':
- license: "https://opensource.org/licenses/cpl1.0.txt"
- type: "Common Public License Version 1.0"
org.eclipse.jgit:
'4.4.1.201607150455-r':
license: "https://www.eclipse.org/org/documents/edl-v10.html"
diff --git a/sdks/java/core/build.gradle b/sdks/java/core/build.gradle
index 6f22e1b771a..a1f2916f195 100644
--- a/sdks/java/core/build.gradle
+++ b/sdks/java/core/build.gradle
@@ -106,7 +106,6 @@ dependencies {
implementation library.java.snake_yaml
shadowTest library.java.everit_json_schema
provided library.java.junit
- testImplementation "com.github.stefanbirkner:system-rules:1.19.0"
provided library.java.hamcrest
provided 'io.airlift:aircompressor:0.18'
provided 'com.facebook.presto.hadoop:hadoop-apache2:3.2.0-1'
@@ -125,7 +124,6 @@ dependencies {
shadowTest library.java.log4j2_api
shadowTest library.java.jamm
testRuntimeOnly library.java.slf4j_jdk14
- testImplementation "com.github.stefanbirkner:system-rules:1.19.0"
}
project.tasks.compileTestJava {
diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/fn/JvmInitializersTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/fn/JvmInitializersTest.java
index 7820467987e..25efd2e7e55 100644
--- a/sdks/java/core/src/test/java/org/apache/beam/sdk/fn/JvmInitializersTest.java
+++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/fn/JvmInitializersTest.java
@@ -17,20 +17,26 @@
*/
package org.apache.beam.sdk.fn;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.hasItem;
import static org.hamcrest.core.StringContains.containsString;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import com.google.auto.service.AutoService;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.PrintStream;
+import java.io.UnsupportedEncodingException;
+import java.util.Scanner;
import org.apache.beam.sdk.harness.JvmInitializer;
import org.apache.beam.sdk.options.PipelineOptions;
import org.apache.beam.sdk.testing.ExpectedLogs;
import org.apache.beam.sdk.testing.TestPipeline;
-import org.hamcrest.MatcherAssert;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
-import org.junit.contrib.java.lang.system.SystemOutRule;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -39,7 +45,6 @@ import org.junit.runners.JUnit4;
public final class JvmInitializersTest {
@Rule public ExpectedLogs expectedLogs = ExpectedLogs.none(JvmInitializers.class);
- @Rule public SystemOutRule systemOutRule = new SystemOutRule().enableLog();
private static Boolean onStartupRan;
private static Boolean beforeProcessingRan;
@@ -68,12 +73,23 @@ public final class JvmInitializersTest {
}
@Test
- public void runOnStartup_runsInitializers() {
- JvmInitializers.runOnStartup();
+ public void runOnStartup_runsInitializers() throws IOException, UnsupportedEncodingException {
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ PrintStream out = System.out;
+ try (PrintStream ps = new PrintStream(baos, false, "UTF8")) {
+ System.setOut(ps);
+ JvmInitializers.runOnStartup();
+ } finally {
+ System.setOut(out);
+ }
assertTrue(onStartupRan);
- MatcherAssert.assertThat(
- systemOutRule.getLog(), containsString("Running JvmInitializer#onStartup"));
+ assertThat(
+ () ->
+ new Scanner(new ByteArrayInputStream(baos.toByteArray()), "UTF8")
+ .useDelimiter(System.lineSeparator()),
+ hasItem(containsString("Running JvmInitializer#onStartup")));
}
@Test