From e82128cc083596c5bd90b45444bc3d2b0ee760c9 Mon Sep 17 00:00:00 2001 From: Joao Duarte Date: Tue, 5 Dec 2023 00:14:41 -0300 Subject: [PATCH 1/2] test: Add arithmetic expression case --- bin/tests/cli.rs | 5 +++++ bin/tests/samples/arithmetic_expression/base.java | 5 +++++ bin/tests/samples/arithmetic_expression/left.java | 5 +++++ bin/tests/samples/arithmetic_expression/merge.expected.java | 1 + bin/tests/samples/arithmetic_expression/right.java | 5 +++++ 5 files changed, 21 insertions(+) create mode 100644 bin/tests/samples/arithmetic_expression/base.java create mode 100644 bin/tests/samples/arithmetic_expression/left.java create mode 100644 bin/tests/samples/arithmetic_expression/merge.expected.java create mode 100644 bin/tests/samples/arithmetic_expression/right.java diff --git a/bin/tests/cli.rs b/bin/tests/cli.rs index 32d6a0a..c9018cd 100644 --- a/bin/tests/cli.rs +++ b/bin/tests/cli.rs @@ -69,6 +69,11 @@ fn it_works_on_no_conflicts() { run_tool_on_scenario("no_conflicts") } +#[test] +fn it_works_on_arithmetic_expression() { + run_tool_on_scenario("arithmetic_expression") +} + fn run_tool_on_scenario(scenario_name: &str) { let mut cmd = Command::cargo_bin("generic-merge").unwrap(); cmd.arg(format!("-b=tests/samples/{}/base.java", scenario_name)) diff --git a/bin/tests/samples/arithmetic_expression/base.java b/bin/tests/samples/arithmetic_expression/base.java new file mode 100644 index 0000000..91a8b56 --- /dev/null +++ b/bin/tests/samples/arithmetic_expression/base.java @@ -0,0 +1,5 @@ +public class Test { + private int method() { + return 2 * (3 + 4); + } +} diff --git a/bin/tests/samples/arithmetic_expression/left.java b/bin/tests/samples/arithmetic_expression/left.java new file mode 100644 index 0000000..4b981a1 --- /dev/null +++ b/bin/tests/samples/arithmetic_expression/left.java @@ -0,0 +1,5 @@ +public class Test { + private int method() { + return 3 * (3 + 4); + } +} diff --git a/bin/tests/samples/arithmetic_expression/merge.expected.java b/bin/tests/samples/arithmetic_expression/merge.expected.java new file mode 100644 index 0000000..f956fad --- /dev/null +++ b/bin/tests/samples/arithmetic_expression/merge.expected.java @@ -0,0 +1 @@ + public class Test { private int method ( ) { return 3 * ( 4 + 4 ) ; } } \ No newline at end of file diff --git a/bin/tests/samples/arithmetic_expression/right.java b/bin/tests/samples/arithmetic_expression/right.java new file mode 100644 index 0000000..5b70985 --- /dev/null +++ b/bin/tests/samples/arithmetic_expression/right.java @@ -0,0 +1,5 @@ +public class Test { + private int method() { + return 2 * (4 + 4); + } +} From 6a575ab6124d93efb74daaff50e8ee88f9786055 Mon Sep 17 00:00:00 2001 From: Joao Duarte Date: Tue, 5 Dec 2023 00:16:35 -0300 Subject: [PATCH 2/2] test: Add consecutive lines scenario --- bin/tests/cli.rs | 5 +++++ bin/tests/samples/consecutive_lines/base.java | 6 ++++++ bin/tests/samples/consecutive_lines/left.java | 6 ++++++ bin/tests/samples/consecutive_lines/merge.expected.java | 1 + bin/tests/samples/consecutive_lines/right.java | 6 ++++++ 5 files changed, 24 insertions(+) create mode 100644 bin/tests/samples/consecutive_lines/base.java create mode 100644 bin/tests/samples/consecutive_lines/left.java create mode 100644 bin/tests/samples/consecutive_lines/merge.expected.java create mode 100644 bin/tests/samples/consecutive_lines/right.java diff --git a/bin/tests/cli.rs b/bin/tests/cli.rs index c9018cd..5c77a3f 100644 --- a/bin/tests/cli.rs +++ b/bin/tests/cli.rs @@ -74,6 +74,11 @@ fn it_works_on_arithmetic_expression() { run_tool_on_scenario("arithmetic_expression") } +#[test] +fn it_works_on_consecutive_lines() { + run_tool_on_scenario("consecutive_lines") +} + fn run_tool_on_scenario(scenario_name: &str) { let mut cmd = Command::cargo_bin("generic-merge").unwrap(); cmd.arg(format!("-b=tests/samples/{}/base.java", scenario_name)) diff --git a/bin/tests/samples/consecutive_lines/base.java b/bin/tests/samples/consecutive_lines/base.java new file mode 100644 index 0000000..4a44dc2 --- /dev/null +++ b/bin/tests/samples/consecutive_lines/base.java @@ -0,0 +1,6 @@ +public class Test { + private void method() { + int a = 0; + int b = 0; + } +} diff --git a/bin/tests/samples/consecutive_lines/left.java b/bin/tests/samples/consecutive_lines/left.java new file mode 100644 index 0000000..d41976b --- /dev/null +++ b/bin/tests/samples/consecutive_lines/left.java @@ -0,0 +1,6 @@ +public class Test { + private void method() { + int a = 1; + int b = 0; + } +} diff --git a/bin/tests/samples/consecutive_lines/merge.expected.java b/bin/tests/samples/consecutive_lines/merge.expected.java new file mode 100644 index 0000000..a346352 --- /dev/null +++ b/bin/tests/samples/consecutive_lines/merge.expected.java @@ -0,0 +1 @@ + public class Test { private void method ( ) { int a = 1 ; int b = 1 ; } } \ No newline at end of file diff --git a/bin/tests/samples/consecutive_lines/right.java b/bin/tests/samples/consecutive_lines/right.java new file mode 100644 index 0000000..b2c1863 --- /dev/null +++ b/bin/tests/samples/consecutive_lines/right.java @@ -0,0 +1,6 @@ +public class Test { + private void method() { + int a = 0; + int b = 1; + } +}