From 155995d683962795f70a9aeb5416d93125fbaab7 Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Tue, 24 Jan 2023 13:38:55 +0900 Subject: [PATCH 1/9] =?UTF-8?q?create=20=E4=BD=9C=E6=88=90=E5=AE=8C?= =?UTF-8?q?=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- contents/tutorial/coding-java-junit/README.md | 71 +++++++++++++++++++ contents/tutorial/coding-java-junit/pom.xml | 61 ++++++++++++++++ .../tutorial/coding-java-junit/solution.md | 4 ++ .../coding-java-junit/solution/track/App.java | 7 ++ .../src/main/java/track/App.java | 7 ++ .../src/main/java/track/Main.java | 9 +++ .../src/test/java/track/AppSecretTest.java | 41 +++++++++++ .../src/test/java/track/AppTest.java | 41 +++++++++++ .../src/test/java/track/Util.java | 29 ++++++++ .../src/test/resources/in/public/01.txt | 1 + .../src/test/resources/in/public/02.txt | 1 + .../src/test/resources/in/public/03.txt | 1 + .../src/test/resources/in/secret/04.txt | 1 + .../src/test/resources/in/secret/05.txt | 1 + .../src/test/resources/in/secret/06.txt | 1 + .../src/test/resources/in/secret/07.txt | 1 + .../src/test/resources/in/secret/08.txt | 1 + .../src/test/resources/in/secret/09.txt | 1 + .../src/test/resources/mappings/mappings.yaml | 10 +++ .../src/test/resources/out/public/01.txt | 1 + .../src/test/resources/out/public/02.txt | 1 + .../src/test/resources/out/public/03.txt | 1 + .../src/test/resources/out/secret/04.txt | 1 + .../src/test/resources/out/secret/05.txt | 1 + .../src/test/resources/out/secret/06.txt | 1 + .../src/test/resources/out/secret/07.txt | 1 + .../src/test/resources/out/secret/08.txt | 1 + .../src/test/resources/out/secret/09.txt | 1 + .../src/test/resources/public.testcases.csv | 3 + .../src/test/resources/secret.testcases.csv | 6 ++ contents/tutorial/coding-java-junit/track.yml | 45 ++++++++++++ 31 files changed, 352 insertions(+) create mode 100644 contents/tutorial/coding-java-junit/README.md create mode 100644 contents/tutorial/coding-java-junit/pom.xml create mode 100644 contents/tutorial/coding-java-junit/solution.md create mode 100644 contents/tutorial/coding-java-junit/solution/track/App.java create mode 100644 contents/tutorial/coding-java-junit/src/main/java/track/App.java create mode 100644 contents/tutorial/coding-java-junit/src/main/java/track/Main.java create mode 100644 contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java create mode 100644 contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java create mode 100644 contents/tutorial/coding-java-junit/src/test/java/track/Util.java create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv create mode 100644 contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv create mode 100644 contents/tutorial/coding-java-junit/track.yml diff --git a/contents/tutorial/coding-java-junit/README.md b/contents/tutorial/coding-java-junit/README.md new file mode 100644 index 000000000..0fc027c1d --- /dev/null +++ b/contents/tutorial/coding-java-junit/README.md @@ -0,0 +1,71 @@ +# 問題の概要 +あなたは計算機の開発エンジニアで、足し算の機能実装を依頼されました、下記の仕様に従って開発を進めてください。 + +## テストについて +この問題は、公開テストと非公開テストで採点されます。注意して実装・動作確認をして提出してください。 +### 公開テストの範囲 +* 基本的なテストケース + +### 非公開テストの範囲 +* 基本的なテストケース +* 境界値のテストケース + +## **[App.java](src/main/java/track/App.java) (編集可)** +### `add(int x, int y)` +`x` と `y` の足し算した値を返します。 +[Main.java](src/main/java/track/Main.java) (編集不可)から呼び出されます。 + +#### パラメータ +- `int x`: 足し算する整数 +- `int y`: 足し算する整数 + +#### 返り値 +- 足し算した値 + +## 入力のフォーマット +* \\(x\\): + * 足し算する整数。 + * \\(0\\)~\\(99\\) の整数。 +* \\(y\\): + * 足し算する整数。 + * \\(0\\)~\\(99\\) の整数。 + +## 実行例 +### 例1 +#### add の引数の値 +* \\(x\\): 2 +* \\(y\\): 3 + +#### 標準出力の結果 + +``` console +5 +``` + +2 + 3 は 5 です。 + +### 例2 +#### add の引数の値 +* \\(x\\): 15 +* \\(y\\): 8 + +#### 標準出力の結果 + +``` console +23 +``` + +15 + 8 は 23 です。 + +### 例3 +#### add の引数の値 +* \\(x\\): 65 +* \\(y\\): 94 + +#### 標準出力の結果 + +``` console +159 +``` + +65 + 94 は 159 です。 diff --git a/contents/tutorial/coding-java-junit/pom.xml b/contents/tutorial/coding-java-junit/pom.xml new file mode 100644 index 000000000..45ef33fd0 --- /dev/null +++ b/contents/tutorial/coding-java-junit/pom.xml @@ -0,0 +1,61 @@ + + + + 4.0.0 + + track + theapp + 1.0-SNAPSHOT + + app + http://www.example.com + + + UTF-8 + + + + + + org.apache.maven.plugins + maven-surefire-plugin + 3.0.0-M5 + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + org.apache.maven.plugins + maven-jar-plugin + + + + track.Main + + + + + + + + + + org.junit.jupiter + junit-jupiter + 5.7.0 + test + + + org.hamcrest + hamcrest + 2.1 + test + + + diff --git a/contents/tutorial/coding-java-junit/solution.md b/contents/tutorial/coding-java-junit/solution.md new file mode 100644 index 000000000..85a370414 --- /dev/null +++ b/contents/tutorial/coding-java-junit/solution.md @@ -0,0 +1,4 @@ +## 問題のポイント +次のような内容を問う問題です。 + +- 基本的な足し算ができること diff --git a/contents/tutorial/coding-java-junit/solution/track/App.java b/contents/tutorial/coding-java-junit/solution/track/App.java new file mode 100644 index 000000000..4f08504a3 --- /dev/null +++ b/contents/tutorial/coding-java-junit/solution/track/App.java @@ -0,0 +1,7 @@ +package track; + +public class App { + public static int add(int x, int y) { + return x + y; + } +} diff --git a/contents/tutorial/coding-java-junit/src/main/java/track/App.java b/contents/tutorial/coding-java-junit/src/main/java/track/App.java new file mode 100644 index 000000000..9a6fd3feb --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/main/java/track/App.java @@ -0,0 +1,7 @@ +package track; + +public class App { + public static int add(int x, int y) { + return -1; + } +} diff --git a/contents/tutorial/coding-java-junit/src/main/java/track/Main.java b/contents/tutorial/coding-java-junit/src/main/java/track/Main.java new file mode 100644 index 000000000..5f4e94c17 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/main/java/track/Main.java @@ -0,0 +1,9 @@ +package track; + +public class Main { + public static void main(String[] args) { + int x = Integer.parseInt(args[0]); + int y = Integer.parseInt(args[1]); + System.out.print(App.add(x, y)); + } +} diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java b/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java new file mode 100644 index 000000000..fa3d04ab1 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java @@ -0,0 +1,41 @@ +package track; + +import org.junit.jupiter.api.Timeout; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvFileSource; + +import java.io.IOException; +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.charset.StandardCharsets; +import java.util.List; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.CoreMatchers.is; + +@Timeout(5) +public class AppSecretTest { + @ParameterizedTest + @CsvFileSource(resources = "/secret.testcases.csv") + void test(String input, String expected) throws IOException { + + PrintStream origin = System.out; + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + System.setOut(new PrintStream(bos, true, "utf-8")); + String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); + Util.runApp(args); + String result = new String(bos.toByteArray(), "utf-8").trim(); + + List expectedContent = Files.readAllLines(Paths.get(expected)); + String output = String.join("\n",expectedContent).trim(); + + assertThat(result, is(output)); + } finally { + System.setOut(origin); + } + } +} diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java b/contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java new file mode 100644 index 000000000..c050c56b9 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java @@ -0,0 +1,41 @@ +package track; + +import org.junit.jupiter.api.Timeout; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvFileSource; + +import java.io.IOException; +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.charset.StandardCharsets; +import java.util.List; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.CoreMatchers.is; + +@Timeout(5) +public class AppTest { + @ParameterizedTest + @CsvFileSource(resources = "/public.testcases.csv") + void test(String input, String expected) throws IOException { + + PrintStream origin = System.out; + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + System.setOut(new PrintStream(bos, true, "utf-8")); + String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); + Util.runApp(args); + String result = new String(bos.toByteArray(), "utf-8").trim(); + + List expectedContent = Files.readAllLines(Paths.get(expected)); + String output = String.join("\n",expectedContent).trim(); + + assertThat(result, is(output)); + } finally { + System.setOut(origin); + } + } +} diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/Util.java b/contents/tutorial/coding-java-junit/src/test/java/track/Util.java new file mode 100644 index 000000000..f42d29bad --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/java/track/Util.java @@ -0,0 +1,29 @@ +package track; + +import static org.junit.jupiter.api.Assertions.fail; + +public class Util { + private static long TIMEOUT = 5_000; + + public static void runApp(String[] args) { + AppThread th = new AppThread(args); + try { + th.start(); + th.join(TIMEOUT); + } catch (InterruptedException e) { + fail("Timeout " + TIMEOUT + "ms"); + } + } + + private static class AppThread extends Thread { + private final String[] args; + + AppThread(String[] args) { + this.args = args; + } + + public void run() { + Main.main(args); + } + } +} diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt new file mode 100644 index 000000000..654d52694 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt @@ -0,0 +1 @@ +2 3 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt new file mode 100644 index 000000000..311b8e35c --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt @@ -0,0 +1 @@ +15 8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt new file mode 100644 index 000000000..d8d1de8df --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt @@ -0,0 +1 @@ +65 94 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt new file mode 100644 index 000000000..5ce8e946f --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt @@ -0,0 +1 @@ +0 8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt new file mode 100644 index 000000000..41cc0685f --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt @@ -0,0 +1 @@ +99 32 \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt new file mode 100644 index 000000000..88beebfd2 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt @@ -0,0 +1 @@ +21 0 \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt new file mode 100644 index 000000000..561ef584f --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt @@ -0,0 +1 @@ +4 99 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt new file mode 100644 index 000000000..b748e2dcf --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt @@ -0,0 +1 @@ +0 0 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt new file mode 100644 index 000000000..ec88bad4f --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt @@ -0,0 +1 @@ +99 99 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml b/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml new file mode 100644 index 000000000..e4d6f4981 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml @@ -0,0 +1,10 @@ +'AppTest test(String, String)[1]': '[基本実装] 入力が 2 と 3 のとき、期待された出力結果が得られる' +'AppTest test(String, String)[2]': '[基本実装] 入力が 15 と 8 のとき、期待された出力結果が得られる' +'AppTest test(String, String)[3]': '[基本実装] 入力が 65 と 94 のとき、期待された出力結果が得られる' + +'AppSecretTest test(String, String)[1]': '[コーナーケース] x の値が最小のとき、期待された出力結果が得られる' +'AppSecretTest test(String, String)[2]': '[コーナーケース] x の値が最大のとき、期待された出力結果が得られる' +'AppSecretTest test(String, String)[3]': '[コーナーケース] y の値が最小のとき、期待された出力結果が得られる' +'AppSecretTest test(String, String)[4]': '[コーナーケース] y の値が最大のとき、期待された出力結果が得られる' +'AppSecretTest test(String, String)[5]': '[コーナーケース] x と y の値が最小のとき、期待された出力結果が得られる' +'AppSecretTest test(String, String)[6]': '[コーナーケース] x と y の値が最大のとき、期待された出力結果が得られる' diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt new file mode 100644 index 000000000..7ed6ff82d --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt @@ -0,0 +1 @@ +5 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt new file mode 100644 index 000000000..409940768 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt @@ -0,0 +1 @@ +23 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt new file mode 100644 index 000000000..3f7d1915f --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt @@ -0,0 +1 @@ +159 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt new file mode 100644 index 000000000..45a4fb75d --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt @@ -0,0 +1 @@ +8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt new file mode 100644 index 000000000..a57f6ce7b --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt @@ -0,0 +1 @@ +131 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt new file mode 100644 index 000000000..aabe6ec39 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt @@ -0,0 +1 @@ +21 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt new file mode 100644 index 000000000..a9c8fe829 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt @@ -0,0 +1 @@ +103 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt new file mode 100644 index 000000000..573541ac9 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt @@ -0,0 +1 @@ +0 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt new file mode 100644 index 000000000..ca55a6c59 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt @@ -0,0 +1 @@ +198 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv b/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv new file mode 100644 index 000000000..57a4f73bf --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv @@ -0,0 +1,3 @@ +src/test/resources/in/public/01.txt, src/test/resources/out/public/01.txt +src/test/resources/in/public/02.txt, src/test/resources/out/public/02.txt +src/test/resources/in/public/03.txt, src/test/resources/out/public/03.txt \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv b/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv new file mode 100644 index 000000000..ad75c62f5 --- /dev/null +++ b/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv @@ -0,0 +1,6 @@ +src/test/resources/in/secret/04.txt, src/test/resources/out/secret/04.txt +src/test/resources/in/secret/05.txt, src/test/resources/out/secret/05.txt +src/test/resources/in/secret/06.txt, src/test/resources/out/secret/06.txt +src/test/resources/in/secret/07.txt, src/test/resources/out/secret/07.txt +src/test/resources/in/secret/08.txt, src/test/resources/out/secret/08.txt +src/test/resources/in/secret/09.txt, src/test/resources/out/secret/09.txt \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml new file mode 100644 index 000000000..6ba0443b2 --- /dev/null +++ b/contents/tutorial/coding-java-junit/track.yml @@ -0,0 +1,45 @@ +type: coding +allowNewFile: false +main: src/main/java/track/App.java +editable: + - src/main/java/track/App.java +readonly: + - src/main/java/track/Main.java + - src/test/java/track/AppTest.java + - src/test/java/track/Util.java + - src/test/resources/in/public/* + - src/test/resources/out/public/* + - src/test/resources/*public* + - src/test/resources/mappings/mappings.yaml + - pom.xml +hide: + - src/test/java/track/AppSecretTest.java + - src/test/resources/in/secret/* + - src/test/resources/out/secret/* + - src/test/resources/*secret* +test: > + if mvn -q compile; then + mvn -q test; + metatest do echo then expand junit target/surefire-reports/TEST-track.AppTest.xml with mappings src/test/resources/mappings/mappings.yaml; + test -f src/test/resources/secret.testcases.csv && metatest do echo then expand junit target/surefire-reports/TEST-track.AppSecretTest.xml with mappings src/test/resources/mappings/mappings.yaml count from 4; + fi +envConf: + imageName: givery/track-java-corretto-11.0 + cacheDirs: + - /root/.m2 +solutions: + - src/main/java/track/App.java:solution/track/App.java +testcases: + open: 3 + secret: 6 +debug: + command: > + mvn -q package -Dmaven.test.skip=true && + xargs java -jar target/theapp-1.0-SNAPSHOT.jar $* + input: + - "file:[[基本実装] 入力が 2 と 3 のとき、期待された出力結果が得られる]src/test/resources/in/public/01.txt" + - "file:[[基本実装] 入力が 15 と 8 のとき、期待された出力結果が得られる]src/test/resources/in/public/02.txt" + - "file:[[基本実装] 入力が 65 と 94 のとき、期待された出力結果が得られる]src/test/resources/in/public/03.txt" +evaluationPoint: + 基本実装: 基本的なテストケースにおいて、正答が出力できる + コーナーケース: 境界値のテストケースにおいて、正答が出力できる From a5e600ca0e3490d08b93b273b0d26f020b385345 Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Tue, 31 Jan 2023 20:40:32 +0900 Subject: [PATCH 2/9] =?UTF-8?q?add=20=E3=83=86=E3=82=B9=E3=83=88=E5=AE=9F?= =?UTF-8?q?=E8=A1=8C=E6=AE=B5=E9=9A=8E=E3=81=AEAppTest.java=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../02/src/test/java/track/AppTest.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java diff --git a/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java b/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java new file mode 100644 index 000000000..1f6b71fe9 --- /dev/null +++ b/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java @@ -0,0 +1,41 @@ +package track; + +import org.junit.jupiter.api.Timeout; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvFileSource; + +import java.io.IOException; +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.charset.StandardCharsets; +import java.util.List; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.CoreMatchers.is; + +@Timeout(5) +public class AppTest { + @ParameterizedTest + @CsvFileSource(resources = "/public.testcases.csv") + void test(String input, String expected) throws IOException { + + PrintStream origin = System.out; + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + System.setOut(new PrintStream(bos, true, "utf-8")); + String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); + Main.main(args); + String result = new String(bos.toByteArray(), "utf-8").trim(); + + List expectedContent = Files.readAllLines(Paths.get(expected)); + String output = String.join("\n",expectedContent).trim(); + + assertThat(result, is(output)); + } finally { + System.setOut(origin); + } + } +} From 6c515c4d6eda02c153fd5a97f36feb6576b9621c Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Sun, 19 Feb 2023 13:43:45 +0900 Subject: [PATCH 3/9] =?UTF-8?q?fix=20=E3=82=AA=E3=83=97=E3=82=B7=E3=83=A7?= =?UTF-8?q?=E3=83=8A=E3=83=AB=E3=81=AA=E5=86=85=E5=AE=B9=E3=82=92=E5=89=8A?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- contents/tutorial/coding-java-junit/README.md | 73 ++----------------- .../tutorial/coding-java-junit/solution.md | 4 - .../solution/{track => }/App.java | 2 - .../src/main/java/{track => }/App.java | 2 - .../src/main/java/{track => }/Main.java | 2 - .../src/test/java/{track => }/AppTest.java | 2 - .../src/test/java/{track => }/Util.java | 2 - .../src/test/java/track/AppSecretTest.java | 41 ----------- .../resources/in/public/{01.txt => 01.in} | 0 .../resources/in/public/{02.txt => 02.in} | 0 .../resources/in/public/{03.txt => 03.in} | 0 .../src/test/resources/in/secret/04.txt | 1 - .../src/test/resources/in/secret/05.txt | 1 - .../src/test/resources/in/secret/06.txt | 1 - .../src/test/resources/in/secret/07.txt | 1 - .../src/test/resources/in/secret/08.txt | 1 - .../src/test/resources/in/secret/09.txt | 1 - .../src/test/resources/mappings/mappings.yaml | 10 --- .../resources/out/public/{01.txt => 01.out} | 0 .../resources/out/public/{02.txt => 02.out} | 0 .../resources/out/public/{03.txt => 03.out} | 0 .../src/test/resources/out/secret/04.txt | 1 - .../src/test/resources/out/secret/05.txt | 1 - .../src/test/resources/out/secret/06.txt | 1 - .../src/test/resources/out/secret/07.txt | 1 - .../src/test/resources/out/secret/08.txt | 1 - .../src/test/resources/out/secret/09.txt | 1 - .../src/test/resources/public.testcases.csv | 6 +- .../src/test/resources/secret.testcases.csv | 6 -- .../02/src/test/java/track/AppTest.java | 41 ----------- contents/tutorial/coding-java-junit/track.yml | 37 +++------- 31 files changed, 18 insertions(+), 222 deletions(-) delete mode 100644 contents/tutorial/coding-java-junit/solution.md rename contents/tutorial/coding-java-junit/solution/{track => }/App.java (85%) rename contents/tutorial/coding-java-junit/src/main/java/{track => }/App.java (84%) rename contents/tutorial/coding-java-junit/src/main/java/{track => }/Main.java (92%) rename contents/tutorial/coding-java-junit/src/test/java/{track => }/AppTest.java (98%) rename contents/tutorial/coding-java-junit/src/test/java/{track => }/Util.java (97%) delete mode 100644 contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java rename contents/tutorial/coding-java-junit/src/test/resources/in/public/{01.txt => 01.in} (100%) rename contents/tutorial/coding-java-junit/src/test/resources/in/public/{02.txt => 02.in} (100%) rename contents/tutorial/coding-java-junit/src/test/resources/in/public/{03.txt => 03.in} (100%) delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml rename contents/tutorial/coding-java-junit/src/test/resources/out/public/{01.txt => 01.out} (100%) rename contents/tutorial/coding-java-junit/src/test/resources/out/public/{02.txt => 02.out} (100%) rename contents/tutorial/coding-java-junit/src/test/resources/out/public/{03.txt => 03.out} (100%) delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv delete mode 100644 contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java diff --git a/contents/tutorial/coding-java-junit/README.md b/contents/tutorial/coding-java-junit/README.md index 0fc027c1d..eb0ca0c04 100644 --- a/contents/tutorial/coding-java-junit/README.md +++ b/contents/tutorial/coding-java-junit/README.md @@ -1,71 +1,10 @@ -# 問題の概要 -あなたは計算機の開発エンジニアで、足し算の機能実装を依頼されました、下記の仕様に従って開発を進めてください。 +整数 `x` と `y` を引数で受け取り、足し算した値を戻り値として返す `add(int x, int y)` メソッドを実装してください。 -## テストについて -この問題は、公開テストと非公開テストで採点されます。注意して実装・動作確認をして提出してください。 -### 公開テストの範囲 -* 基本的なテストケース -### 非公開テストの範囲 -* 基本的なテストケース -* 境界値のテストケース +## 例 -## **[App.java](src/main/java/track/App.java) (編集可)** -### `add(int x, int y)` -`x` と `y` の足し算した値を返します。 -[Main.java](src/main/java/track/Main.java) (編集不可)から呼び出されます。 - -#### パラメータ -- `int x`: 足し算する整数 -- `int y`: 足し算する整数 - -#### 返り値 -- 足し算した値 - -## 入力のフォーマット -* \\(x\\): - * 足し算する整数。 - * \\(0\\)~\\(99\\) の整数。 -* \\(y\\): - * 足し算する整数。 - * \\(0\\)~\\(99\\) の整数。 - -## 実行例 -### 例1 -#### add の引数の値 -* \\(x\\): 2 -* \\(y\\): 3 - -#### 標準出力の結果 - -``` console -5 +``` java +add(2, 3) // 5 +add(15, 8) // 23 +add(65, 94) // 159 ``` - -2 + 3 は 5 です。 - -### 例2 -#### add の引数の値 -* \\(x\\): 15 -* \\(y\\): 8 - -#### 標準出力の結果 - -``` console -23 -``` - -15 + 8 は 23 です。 - -### 例3 -#### add の引数の値 -* \\(x\\): 65 -* \\(y\\): 94 - -#### 標準出力の結果 - -``` console -159 -``` - -65 + 94 は 159 です。 diff --git a/contents/tutorial/coding-java-junit/solution.md b/contents/tutorial/coding-java-junit/solution.md deleted file mode 100644 index 85a370414..000000000 --- a/contents/tutorial/coding-java-junit/solution.md +++ /dev/null @@ -1,4 +0,0 @@ -## 問題のポイント -次のような内容を問う問題です。 - -- 基本的な足し算ができること diff --git a/contents/tutorial/coding-java-junit/solution/track/App.java b/contents/tutorial/coding-java-junit/solution/App.java similarity index 85% rename from contents/tutorial/coding-java-junit/solution/track/App.java rename to contents/tutorial/coding-java-junit/solution/App.java index 4f08504a3..454c37924 100644 --- a/contents/tutorial/coding-java-junit/solution/track/App.java +++ b/contents/tutorial/coding-java-junit/solution/App.java @@ -1,5 +1,3 @@ -package track; - public class App { public static int add(int x, int y) { return x + y; diff --git a/contents/tutorial/coding-java-junit/src/main/java/track/App.java b/contents/tutorial/coding-java-junit/src/main/java/App.java similarity index 84% rename from contents/tutorial/coding-java-junit/src/main/java/track/App.java rename to contents/tutorial/coding-java-junit/src/main/java/App.java index 9a6fd3feb..ad7c8cea9 100644 --- a/contents/tutorial/coding-java-junit/src/main/java/track/App.java +++ b/contents/tutorial/coding-java-junit/src/main/java/App.java @@ -1,5 +1,3 @@ -package track; - public class App { public static int add(int x, int y) { return -1; diff --git a/contents/tutorial/coding-java-junit/src/main/java/track/Main.java b/contents/tutorial/coding-java-junit/src/main/java/Main.java similarity index 92% rename from contents/tutorial/coding-java-junit/src/main/java/track/Main.java rename to contents/tutorial/coding-java-junit/src/main/java/Main.java index 5f4e94c17..15cba11d9 100644 --- a/contents/tutorial/coding-java-junit/src/main/java/track/Main.java +++ b/contents/tutorial/coding-java-junit/src/main/java/Main.java @@ -1,5 +1,3 @@ -package track; - public class Main { public static void main(String[] args) { int x = Integer.parseInt(args[0]); diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java similarity index 98% rename from contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java rename to contents/tutorial/coding-java-junit/src/test/java/AppTest.java index c050c56b9..c185f9819 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/track/AppTest.java +++ b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java @@ -1,5 +1,3 @@ -package track; - import org.junit.jupiter.api.Timeout; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvFileSource; diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/Util.java b/contents/tutorial/coding-java-junit/src/test/java/Util.java similarity index 97% rename from contents/tutorial/coding-java-junit/src/test/java/track/Util.java rename to contents/tutorial/coding-java-junit/src/test/java/Util.java index f42d29bad..542a035f6 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/track/Util.java +++ b/contents/tutorial/coding-java-junit/src/test/java/Util.java @@ -1,5 +1,3 @@ -package track; - import static org.junit.jupiter.api.Assertions.fail; public class Util { diff --git a/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java b/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java deleted file mode 100644 index fa3d04ab1..000000000 --- a/contents/tutorial/coding-java-junit/src/test/java/track/AppSecretTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package track; - -import org.junit.jupiter.api.Timeout; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.CsvFileSource; - -import java.io.IOException; -import java.io.PrintStream; -import java.io.ByteArrayOutputStream; - -import java.nio.file.Files; -import java.nio.file.Paths; -import java.nio.charset.StandardCharsets; -import java.util.List; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.CoreMatchers.is; - -@Timeout(5) -public class AppSecretTest { - @ParameterizedTest - @CsvFileSource(resources = "/secret.testcases.csv") - void test(String input, String expected) throws IOException { - - PrintStream origin = System.out; - try { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - System.setOut(new PrintStream(bos, true, "utf-8")); - String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); - Util.runApp(args); - String result = new String(bos.toByteArray(), "utf-8").trim(); - - List expectedContent = Files.readAllLines(Paths.get(expected)); - String output = String.join("\n",expectedContent).trim(); - - assertThat(result, is(output)); - } finally { - System.setOut(origin); - } - } -} diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/in/public/01.txt rename to contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/in/public/02.txt rename to contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/in/public/03.txt rename to contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt deleted file mode 100644 index 5ce8e946f..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/04.txt +++ /dev/null @@ -1 +0,0 @@ -0 8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt deleted file mode 100644 index 41cc0685f..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/05.txt +++ /dev/null @@ -1 +0,0 @@ -99 32 \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt deleted file mode 100644 index 88beebfd2..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/06.txt +++ /dev/null @@ -1 +0,0 @@ -21 0 \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt deleted file mode 100644 index 561ef584f..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/07.txt +++ /dev/null @@ -1 +0,0 @@ -4 99 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt deleted file mode 100644 index b748e2dcf..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/08.txt +++ /dev/null @@ -1 +0,0 @@ -0 0 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt b/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt deleted file mode 100644 index ec88bad4f..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/secret/09.txt +++ /dev/null @@ -1 +0,0 @@ -99 99 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml b/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml deleted file mode 100644 index e4d6f4981..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/mappings/mappings.yaml +++ /dev/null @@ -1,10 +0,0 @@ -'AppTest test(String, String)[1]': '[基本実装] 入力が 2 と 3 のとき、期待された出力結果が得られる' -'AppTest test(String, String)[2]': '[基本実装] 入力が 15 と 8 のとき、期待された出力結果が得られる' -'AppTest test(String, String)[3]': '[基本実装] 入力が 65 と 94 のとき、期待された出力結果が得られる' - -'AppSecretTest test(String, String)[1]': '[コーナーケース] x の値が最小のとき、期待された出力結果が得られる' -'AppSecretTest test(String, String)[2]': '[コーナーケース] x の値が最大のとき、期待された出力結果が得られる' -'AppSecretTest test(String, String)[3]': '[コーナーケース] y の値が最小のとき、期待された出力結果が得られる' -'AppSecretTest test(String, String)[4]': '[コーナーケース] y の値が最大のとき、期待された出力結果が得られる' -'AppSecretTest test(String, String)[5]': '[コーナーケース] x と y の値が最小のとき、期待された出力結果が得られる' -'AppSecretTest test(String, String)[6]': '[コーナーケース] x と y の値が最大のとき、期待された出力結果が得られる' diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/out/public/01.txt rename to contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/out/public/02.txt rename to contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out similarity index 100% rename from contents/tutorial/coding-java-junit/src/test/resources/out/public/03.txt rename to contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt deleted file mode 100644 index 45a4fb75d..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/04.txt +++ /dev/null @@ -1 +0,0 @@ -8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt deleted file mode 100644 index a57f6ce7b..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/05.txt +++ /dev/null @@ -1 +0,0 @@ -131 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt deleted file mode 100644 index aabe6ec39..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/06.txt +++ /dev/null @@ -1 +0,0 @@ -21 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt deleted file mode 100644 index a9c8fe829..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/07.txt +++ /dev/null @@ -1 +0,0 @@ -103 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt deleted file mode 100644 index 573541ac9..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/08.txt +++ /dev/null @@ -1 +0,0 @@ -0 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt b/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt deleted file mode 100644 index ca55a6c59..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/secret/09.txt +++ /dev/null @@ -1 +0,0 @@ -198 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv b/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv index 57a4f73bf..7b3b4a632 100644 --- a/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv +++ b/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv @@ -1,3 +1,3 @@ -src/test/resources/in/public/01.txt, src/test/resources/out/public/01.txt -src/test/resources/in/public/02.txt, src/test/resources/out/public/02.txt -src/test/resources/in/public/03.txt, src/test/resources/out/public/03.txt \ No newline at end of file +src/test/resources/in/public/01.in, src/test/resources/out/public/01.out +src/test/resources/in/public/02.in, src/test/resources/out/public/02.out +src/test/resources/in/public/03.in, src/test/resources/out/public/03.out \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv b/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv deleted file mode 100644 index ad75c62f5..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/secret.testcases.csv +++ /dev/null @@ -1,6 +0,0 @@ -src/test/resources/in/secret/04.txt, src/test/resources/out/secret/04.txt -src/test/resources/in/secret/05.txt, src/test/resources/out/secret/05.txt -src/test/resources/in/secret/06.txt, src/test/resources/out/secret/06.txt -src/test/resources/in/secret/07.txt, src/test/resources/out/secret/07.txt -src/test/resources/in/secret/08.txt, src/test/resources/out/secret/08.txt -src/test/resources/in/secret/09.txt, src/test/resources/out/secret/09.txt \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java b/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java deleted file mode 100644 index 1f6b71fe9..000000000 --- a/contents/tutorial/coding-java-junit/stages/02/src/test/java/track/AppTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package track; - -import org.junit.jupiter.api.Timeout; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.CsvFileSource; - -import java.io.IOException; -import java.io.PrintStream; -import java.io.ByteArrayOutputStream; - -import java.nio.file.Files; -import java.nio.file.Paths; -import java.nio.charset.StandardCharsets; -import java.util.List; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.CoreMatchers.is; - -@Timeout(5) -public class AppTest { - @ParameterizedTest - @CsvFileSource(resources = "/public.testcases.csv") - void test(String input, String expected) throws IOException { - - PrintStream origin = System.out; - try { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - System.setOut(new PrintStream(bos, true, "utf-8")); - String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); - Main.main(args); - String result = new String(bos.toByteArray(), "utf-8").trim(); - - List expectedContent = Files.readAllLines(Paths.get(expected)); - String output = String.join("\n",expectedContent).trim(); - - assertThat(result, is(output)); - } finally { - System.setOut(origin); - } - } -} diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index 6ba0443b2..03097b9df 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -1,45 +1,26 @@ type: coding -allowNewFile: false -main: src/main/java/track/App.java +main: src/main/java/App.java editable: - - src/main/java/track/App.java + - src/main/java/App.java readonly: - - src/main/java/track/Main.java - - src/test/java/track/AppTest.java - - src/test/java/track/Util.java + - src/main/java/Main.java + - src/test/java/AppTest.java + - src/test/java/Util.java - src/test/resources/in/public/* - src/test/resources/out/public/* - src/test/resources/*public* - - src/test/resources/mappings/mappings.yaml - pom.xml -hide: - - src/test/java/track/AppSecretTest.java - - src/test/resources/in/secret/* - - src/test/resources/out/secret/* - - src/test/resources/*secret* test: > - if mvn -q compile; then - mvn -q test; - metatest do echo then expand junit target/surefire-reports/TEST-track.AppTest.xml with mappings src/test/resources/mappings/mappings.yaml; - test -f src/test/resources/secret.testcases.csv && metatest do echo then expand junit target/surefire-reports/TEST-track.AppSecretTest.xml with mappings src/test/resources/mappings/mappings.yaml count from 4; - fi + mvn test; + metatest do echo then expand junit target/surefire-reports/TEST-AppTest.xml; envConf: imageName: givery/track-java-corretto-11.0 cacheDirs: - /root/.m2 solutions: - - src/main/java/track/App.java:solution/track/App.java + - src/main/java/App.java:solution/App.java testcases: open: 3 - secret: 6 -debug: - command: > - mvn -q package -Dmaven.test.skip=true && - xargs java -jar target/theapp-1.0-SNAPSHOT.jar $* - input: - - "file:[[基本実装] 入力が 2 と 3 のとき、期待された出力結果が得られる]src/test/resources/in/public/01.txt" - - "file:[[基本実装] 入力が 15 と 8 のとき、期待された出力結果が得られる]src/test/resources/in/public/02.txt" - - "file:[[基本実装] 入力が 65 と 94 のとき、期待された出力結果が得られる]src/test/resources/in/public/03.txt" + secret: 0 evaluationPoint: 基本実装: 基本的なテストケースにおいて、正答が出力できる - コーナーケース: 境界値のテストケースにおいて、正答が出力できる From 11844fc076cab2706729da0a0cbc942c0044e095 Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Thu, 2 Mar 2023 12:54:36 +0900 Subject: [PATCH 4/9] =?UTF-8?q?fix=20Main.java=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- contents/tutorial/coding-java-junit/pom.xml | 21 +------- .../coding-java-junit/solution/App.java | 6 +-- .../coding-java-junit/src/main/java/App.java | 6 +-- .../coding-java-junit/src/main/java/Main.java | 7 --- .../src/test/java/AppTest.java | 49 ++++++++++++------- .../coding-java-junit/src/test/java/Util.java | 36 +++++++------- .../src/test/resources/public.testcases.csv | 3 -- contents/tutorial/coding-java-junit/track.yml | 2 - 8 files changed, 56 insertions(+), 74 deletions(-) delete mode 100644 contents/tutorial/coding-java-junit/src/main/java/Main.java delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv diff --git a/contents/tutorial/coding-java-junit/pom.xml b/contents/tutorial/coding-java-junit/pom.xml index 45ef33fd0..1f4810e61 100644 --- a/contents/tutorial/coding-java-junit/pom.xml +++ b/contents/tutorial/coding-java-junit/pom.xml @@ -17,29 +17,10 @@ - - org.apache.maven.plugins - maven-surefire-plugin - 3.0.0-M5 - org.apache.maven.plugins maven-compiler-plugin - - 1.8 - 1.8 - - - - org.apache.maven.plugins - maven-jar-plugin - - - - track.Main - - - + 3.10.1 diff --git a/contents/tutorial/coding-java-junit/solution/App.java b/contents/tutorial/coding-java-junit/solution/App.java index 454c37924..82bd02baa 100644 --- a/contents/tutorial/coding-java-junit/solution/App.java +++ b/contents/tutorial/coding-java-junit/solution/App.java @@ -1,5 +1,5 @@ public class App { - public static int add(int x, int y) { - return x + y; - } + public static int add(int x, int y) { + return x + y; + } } diff --git a/contents/tutorial/coding-java-junit/src/main/java/App.java b/contents/tutorial/coding-java-junit/src/main/java/App.java index ad7c8cea9..f318b3c4a 100644 --- a/contents/tutorial/coding-java-junit/src/main/java/App.java +++ b/contents/tutorial/coding-java-junit/src/main/java/App.java @@ -1,5 +1,5 @@ public class App { - public static int add(int x, int y) { - return -1; - } + public static int add(int x, int y) { + return -1; + } } diff --git a/contents/tutorial/coding-java-junit/src/main/java/Main.java b/contents/tutorial/coding-java-junit/src/main/java/Main.java deleted file mode 100644 index 15cba11d9..000000000 --- a/contents/tutorial/coding-java-junit/src/main/java/Main.java +++ /dev/null @@ -1,7 +0,0 @@ -public class Main { - public static void main(String[] args) { - int x = Integer.parseInt(args[0]); - int y = Integer.parseInt(args[1]); - System.out.print(App.add(x, y)); - } -} diff --git a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java index c185f9819..57dee5dbe 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java +++ b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java @@ -1,6 +1,5 @@ import org.junit.jupiter.api.Timeout; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.CsvFileSource; +import org.junit.jupiter.api.Test; import java.io.IOException; import java.io.PrintStream; @@ -16,24 +15,36 @@ @Timeout(5) public class AppTest { - @ParameterizedTest - @CsvFileSource(resources = "/public.testcases.csv") - void test(String input, String expected) throws IOException { + @Test + public void test_2_3() throws IOException { + __testOutput("src/test/resources/in/public/01.in", "src/test/resources/out/public/01.out"); + } + @Test + public void test_15_8() throws IOException { + __testOutput("src/test/resources/in/public/02.in", "src/test/resources/out/public/02.out"); + } + @Test + public void test_65_94() throws IOException { + __testOutput("src/test/resources/in/public/03.in", "src/test/resources/out/public/03.out"); + } - PrintStream origin = System.out; - try { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - System.setOut(new PrintStream(bos, true, "utf-8")); - String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); - Util.runApp(args); - String result = new String(bos.toByteArray(), "utf-8").trim(); + private void __testOutput(String input, String expected) throws IOException { + PrintStream origin = System.out; + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + System.setOut(new PrintStream(bos, true, "utf-8")); + String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); + int x = Integer.parseInt(args[0]); + int y = Integer.parseInt(args[1]); + Util.runApp(x, y); + String result = new String(bos.toByteArray(), "utf-8").trim(); - List expectedContent = Files.readAllLines(Paths.get(expected)); - String output = String.join("\n",expectedContent).trim(); + List expectedContent = Files.readAllLines(Paths.get(expected)); + String output = String.join("\n",expectedContent).trim(); - assertThat(result, is(output)); - } finally { - System.setOut(origin); - } - } + assertThat(result, is(output)); + } finally { + System.setOut(origin); + } + } } diff --git a/contents/tutorial/coding-java-junit/src/test/java/Util.java b/contents/tutorial/coding-java-junit/src/test/java/Util.java index 542a035f6..84cc46d88 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/Util.java +++ b/contents/tutorial/coding-java-junit/src/test/java/Util.java @@ -1,27 +1,29 @@ import static org.junit.jupiter.api.Assertions.fail; public class Util { - private static long TIMEOUT = 5_000; + private static long TIMEOUT = 5_000; - public static void runApp(String[] args) { - AppThread th = new AppThread(args); - try { - th.start(); - th.join(TIMEOUT); - } catch (InterruptedException e) { - fail("Timeout " + TIMEOUT + "ms"); - } + public static void runApp(int x, int y) { + AppThread th = new AppThread(x, y); + try { + th.start(); + th.join(TIMEOUT); + } catch (InterruptedException e) { + fail("Timeout " + TIMEOUT + "ms"); } + } - private static class AppThread extends Thread { - private final String[] args; + private static class AppThread extends Thread { + private final int x; + private final int y; - AppThread(String[] args) { - this.args = args; - } + AppThread(int x, int y) { + this.x = x; + this.y = y; + } - public void run() { - Main.main(args); - } + public void run() { + System.out.print(App.add(x, y)); } + } } diff --git a/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv b/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv deleted file mode 100644 index 7b3b4a632..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/public.testcases.csv +++ /dev/null @@ -1,3 +0,0 @@ -src/test/resources/in/public/01.in, src/test/resources/out/public/01.out -src/test/resources/in/public/02.in, src/test/resources/out/public/02.out -src/test/resources/in/public/03.in, src/test/resources/out/public/03.out \ No newline at end of file diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index 03097b9df..d5e41e8f7 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -3,12 +3,10 @@ main: src/main/java/App.java editable: - src/main/java/App.java readonly: - - src/main/java/Main.java - src/test/java/AppTest.java - src/test/java/Util.java - src/test/resources/in/public/* - src/test/resources/out/public/* - - src/test/resources/*public* - pom.xml test: > mvn test; From 2a7ad5b0a5e849b26a4414a262c612bfd0e9b56e Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Sat, 4 Mar 2023 11:55:33 +0900 Subject: [PATCH 5/9] =?UTF-8?q?fix=20=E3=83=AC=E3=83=93=E3=83=A5=E3=83=BC?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/test/java/AppTest.java | 48 +++++++------------ .../coding-java-junit/src/test/java/Util.java | 10 +++- .../src/test/resources/in/public/01.in | 1 - .../src/test/resources/in/public/02.in | 1 - .../src/test/resources/in/public/03.in | 1 - .../src/test/resources/out/public/01.out | 1 - .../src/test/resources/out/public/02.out | 1 - .../src/test/resources/out/public/03.out | 1 - contents/tutorial/coding-java-junit/track.yml | 2 - 9 files changed, 24 insertions(+), 42 deletions(-) delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out delete mode 100644 contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out diff --git a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java index 57dee5dbe..9a0b5b027 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java +++ b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java @@ -1,50 +1,34 @@ import org.junit.jupiter.api.Timeout; import org.junit.jupiter.api.Test; -import java.io.IOException; -import java.io.PrintStream; -import java.io.ByteArrayOutputStream; - -import java.nio.file.Files; -import java.nio.file.Paths; -import java.nio.charset.StandardCharsets; -import java.util.List; - import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.CoreMatchers.is; @Timeout(5) public class AppTest { @Test - public void test_2_3() throws IOException { - __testOutput("src/test/resources/in/public/01.in", "src/test/resources/out/public/01.out"); + public void test_2_3() { + int[] input = {2, 3}; + __testOutput(input, 5); } + @Test - public void test_15_8() throws IOException { - __testOutput("src/test/resources/in/public/02.in", "src/test/resources/out/public/02.out"); + public void test_15_8() { + int[] input = {15, 8}; + __testOutput(input, 23); } + @Test - public void test_65_94() throws IOException { - __testOutput("src/test/resources/in/public/03.in", "src/test/resources/out/public/03.out"); + public void test_65_94() { + int[] input = {65, 94}; + __testOutput(input, 159); } - private void __testOutput(String input, String expected) throws IOException { - PrintStream origin = System.out; - try { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - System.setOut(new PrintStream(bos, true, "utf-8")); - String[] args = Files.readString(Paths.get(input), StandardCharsets.UTF_8).trim().split(" "); - int x = Integer.parseInt(args[0]); - int y = Integer.parseInt(args[1]); - Util.runApp(x, y); - String result = new String(bos.toByteArray(), "utf-8").trim(); - - List expectedContent = Files.readAllLines(Paths.get(expected)); - String output = String.join("\n",expectedContent).trim(); + private void __testOutput(int[] input, int expected) { + int x = input[0]; + int y = input[1]; + int result = Util.runApp(x, y); - assertThat(result, is(output)); - } finally { - System.setOut(origin); - } + assertThat(result, is(expected)); } } diff --git a/contents/tutorial/coding-java-junit/src/test/java/Util.java b/contents/tutorial/coding-java-junit/src/test/java/Util.java index 84cc46d88..80bee2e8e 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/Util.java +++ b/contents/tutorial/coding-java-junit/src/test/java/Util.java @@ -3,7 +3,7 @@ public class Util { private static long TIMEOUT = 5_000; - public static void runApp(int x, int y) { + public static int runApp(int x, int y) { AppThread th = new AppThread(x, y); try { th.start(); @@ -11,19 +11,25 @@ public static void runApp(int x, int y) { } catch (InterruptedException e) { fail("Timeout " + TIMEOUT + "ms"); } + return th.getResult(); } private static class AppThread extends Thread { private final int x; private final int y; + private int result = -1; AppThread(int x, int y) { this.x = x; this.y = y; } + int getResult() { + return this.result; + } + public void run() { - System.out.print(App.add(x, y)); + this.result = App.add(x, y); } } } diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in b/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in deleted file mode 100644 index 654d52694..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/public/01.in +++ /dev/null @@ -1 +0,0 @@ -2 3 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in b/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in deleted file mode 100644 index 311b8e35c..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/public/02.in +++ /dev/null @@ -1 +0,0 @@ -15 8 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in b/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in deleted file mode 100644 index d8d1de8df..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/in/public/03.in +++ /dev/null @@ -1 +0,0 @@ -65 94 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out b/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out deleted file mode 100644 index 7ed6ff82d..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/public/01.out +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out b/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out deleted file mode 100644 index 409940768..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/public/02.out +++ /dev/null @@ -1 +0,0 @@ -23 diff --git a/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out b/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out deleted file mode 100644 index 3f7d1915f..000000000 --- a/contents/tutorial/coding-java-junit/src/test/resources/out/public/03.out +++ /dev/null @@ -1 +0,0 @@ -159 diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index d5e41e8f7..6c200e739 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -5,8 +5,6 @@ editable: readonly: - src/test/java/AppTest.java - src/test/java/Util.java - - src/test/resources/in/public/* - - src/test/resources/out/public/* - pom.xml test: > mvn test; From 5f580d2b5c02471bf6870b4c6e2d3cae5eb39923 Mon Sep 17 00:00:00 2001 From: snakazawa Date: Fri, 17 Mar 2023 22:35:57 +0900 Subject: [PATCH 6/9] use gradle in tutorial/coding-java-junit --- .../tutorial/coding-java-junit/build.gradle | 26 +++++++++++++++++++ .../src/test/java/AppTest.java | 4 +++ contents/tutorial/coding-java-junit/track.yml | 8 +++--- 3 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 contents/tutorial/coding-java-junit/build.gradle diff --git a/contents/tutorial/coding-java-junit/build.gradle b/contents/tutorial/coding-java-junit/build.gradle new file mode 100644 index 000000000..b0c4f26f9 --- /dev/null +++ b/contents/tutorial/coding-java-junit/build.gradle @@ -0,0 +1,26 @@ +apply plugin: 'java' + +repositories { + mavenCentral() +} + +dependencies { + testCompile 'org.junit.jupiter:junit-jupiter:5.7.0' + testCompile 'org.hamcrest:hamcrest:2.1' +} + +test { + useJUnitPlatform() + + testLogging { + showStandardStreams true + events 'failed' + exceptionFormat 'full' + } + + def index = 1 + afterTest { desc, result -> + def str = result.resultType == org.gradle.api.tasks.testing.TestResult.ResultType.SUCCESS ? "ok" : "not ok" + logger.quiet "${str} ${index++} ${desc.displayName}" + } +} diff --git a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java index 9a0b5b027..d40b6077a 100644 --- a/contents/tutorial/coding-java-junit/src/test/java/AppTest.java +++ b/contents/tutorial/coding-java-junit/src/test/java/AppTest.java @@ -1,5 +1,6 @@ import org.junit.jupiter.api.Timeout; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.DisplayName; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.CoreMatchers.is; @@ -7,18 +8,21 @@ @Timeout(5) public class AppTest { @Test + @DisplayName("[基本実装] 入力が 2 と 3 のとき、期待された出力結果が得られる") public void test_2_3() { int[] input = {2, 3}; __testOutput(input, 5); } @Test + @DisplayName("[基本実装] 入力が 15 と 8 のとき、期待された出力結果が得られる") public void test_15_8() { int[] input = {15, 8}; __testOutput(input, 23); } @Test + @DisplayName("[基本実装] 入力が 65 と 94 のとき、期待された出力結果が得られる") public void test_65_94() { int[] input = {65, 94}; __testOutput(input, 159); diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index 6c200e739..5e03fa418 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -5,14 +5,14 @@ editable: readonly: - src/test/java/AppTest.java - src/test/java/Util.java - - pom.xml -test: > - mvn test; - metatest do echo then expand junit target/surefire-reports/TEST-AppTest.xml; + - build.gradle +build: javac src/main/java/App.java && gradle compileTest -q +test: gradle test --warning-mode=none envConf: imageName: givery/track-java-corretto-11.0 cacheDirs: - /root/.m2 + - /root/.gradle solutions: - src/main/java/App.java:solution/App.java testcases: From 4b3a352b234d63c79d78b93697bbda8947d4bc9e Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Thu, 30 Mar 2023 13:31:35 +0900 Subject: [PATCH 7/9] delete pom.xml --- contents/tutorial/coding-java-junit/pom.xml | 42 --------------------- 1 file changed, 42 deletions(-) delete mode 100644 contents/tutorial/coding-java-junit/pom.xml diff --git a/contents/tutorial/coding-java-junit/pom.xml b/contents/tutorial/coding-java-junit/pom.xml deleted file mode 100644 index 1f4810e61..000000000 --- a/contents/tutorial/coding-java-junit/pom.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - 4.0.0 - - track - theapp - 1.0-SNAPSHOT - - app - http://www.example.com - - - UTF-8 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.10.1 - - - - - - - org.junit.jupiter - junit-jupiter - 5.7.0 - test - - - org.hamcrest - hamcrest - 2.1 - test - - - From 3becfd175cfeaa5e515219b1bc9362d28d170c85 Mon Sep 17 00:00:00 2001 From: Syogo-Suganoya Date: Sat, 30 Sep 2023 21:40:50 +0900 Subject: [PATCH 8/9] =?UTF-8?q?fix=20simpleName=20=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- contents/tutorial/coding-java-junit/build.gradle | 4 ++-- contents/tutorial/coding-java-junit/track.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/contents/tutorial/coding-java-junit/build.gradle b/contents/tutorial/coding-java-junit/build.gradle index b0c4f26f9..7a5159803 100644 --- a/contents/tutorial/coding-java-junit/build.gradle +++ b/contents/tutorial/coding-java-junit/build.gradle @@ -5,8 +5,8 @@ repositories { } dependencies { - testCompile 'org.junit.jupiter:junit-jupiter:5.7.0' - testCompile 'org.hamcrest:hamcrest:2.1' + testImplementation 'org.junit.jupiter:junit-jupiter:5.7.0' + testImplementation 'org.hamcrest:hamcrest:2.1' } test { diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index 5e03fa418..84cb647fa 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -9,7 +9,7 @@ readonly: build: javac src/main/java/App.java && gradle compileTest -q test: gradle test --warning-mode=none envConf: - imageName: givery/track-java-corretto-11.0 + imageName: java cacheDirs: - /root/.m2 - /root/.gradle From 74675bed043a505c387e96e2894bfb3cff0630a4 Mon Sep 17 00:00:00 2001 From: shunjikonishi Date: Mon, 8 Apr 2024 13:18:49 +0900 Subject: [PATCH 9/9] Remove javac and add solution.md --- contents/tutorial/coding-java-junit/solution.md | 1 + contents/tutorial/coding-java-junit/track.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 contents/tutorial/coding-java-junit/solution.md diff --git a/contents/tutorial/coding-java-junit/solution.md b/contents/tutorial/coding-java-junit/solution.md new file mode 100644 index 000000000..8bc65375c --- /dev/null +++ b/contents/tutorial/coding-java-junit/solution.md @@ -0,0 +1 @@ +`x + y`を返すように修正します diff --git a/contents/tutorial/coding-java-junit/track.yml b/contents/tutorial/coding-java-junit/track.yml index 84cb647fa..cf9dbaced 100644 --- a/contents/tutorial/coding-java-junit/track.yml +++ b/contents/tutorial/coding-java-junit/track.yml @@ -6,7 +6,7 @@ readonly: - src/test/java/AppTest.java - src/test/java/Util.java - build.gradle -build: javac src/main/java/App.java && gradle compileTest -q +build: gradle compileTest -q test: gradle test --warning-mode=none envConf: imageName: java