diff options
Diffstat (limited to 'base_workspace/examples/java-skylark/src/test/java/com')
3 files changed, 58 insertions, 0 deletions
diff --git a/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/BUILD b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/BUILD new file mode 100644 index 0000000000..90e71f97ac --- /dev/null +++ b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/BUILD @@ -0,0 +1,16 @@ +load("tools/build_rules/java_rules_skylark", "java_test") + +java_test( + name = "pass", + srcs = ["TestHello.java"], + deps = [ + "//examples/java-skylark/src/main/java/com/example/myproject:hello-lib", + "//third_party:junit4", + ], +) + +java_test( + name = "fail", + srcs = ["Fail.java"], + main_class = "com.example.myproject.Fail", +) diff --git a/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/Fail.java b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/Fail.java new file mode 100644 index 0000000000..079e1e9f04 --- /dev/null +++ b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/Fail.java @@ -0,0 +1,7 @@ +package com.example.myproject; + +class Fail { + public static void main(String []args) { + System.exit(1); + } +} diff --git a/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/TestHello.java b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/TestHello.java new file mode 100644 index 0000000000..d50e6e503f --- /dev/null +++ b/base_workspace/examples/java-skylark/src/test/java/com/example/myproject/TestHello.java @@ -0,0 +1,35 @@ +package com.example.myproject; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.nio.charset.StandardCharsets; + +/** + * Tests different numbers of arguments to main(). + * + * <p>With an empty args array, {@link Greeter} should print "Hello world". If there are one or more + * args, {@link Greeter} should print "Hello <arg[0]>".</p> + */ +public class TestHello { + + @Test + public void testNoArgument() throws Exception { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Greeter.out = new PrintStream(out); + Greeter.main(); + assertEquals("Hello world\n", new String(out.toByteArray(), StandardCharsets.UTF_8)); + } + + @Test + public void testWithArgument() throws Exception { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Greeter.out = new PrintStream(out); + Greeter.main("toto"); + assertEquals("Hello toto\n", new String(out.toByteArray(), StandardCharsets.UTF_8)); + } + +} |