From 558ec1245065c72506198bfb41c0ae9a348a62b1 Mon Sep 17 00:00:00 2001 From: bitowl Date: Sun, 25 Nov 2018 21:01:17 +0100 Subject: [PATCH] Create more semantic testcases from the feedback --- semantic/array_creation_boolean.invalid.mj | 5 +++++ semantic/array_creation_ident.invalid.mj | 6 ++++++ semantic/array_creation_null.invalid.mj | 5 +++++ semantic/call_method_on_assignment.java | 19 +++++++++++++++++++ .../call_method_on_undefined_type.invalid.mj | 8 ++++++++ semantic/compare_system.invalid.java | 5 +++++ semantic/compare_system_in.invalid.java | 5 +++++ semantic/compare_system_null.invalid.java | 5 +++++ semantic/compare_system_out.invalid.java | 5 +++++ semantic/invalid_compare_null_int.invalid.mj | 5 +++++ semantic/missing_return_value.invalid.mj | 7 +++++++ 11 files changed, 75 insertions(+) create mode 100644 semantic/array_creation_boolean.invalid.mj create mode 100644 semantic/array_creation_ident.invalid.mj create mode 100644 semantic/array_creation_null.invalid.mj create mode 100644 semantic/call_method_on_assignment.java create mode 100644 semantic/call_method_on_undefined_type.invalid.mj create mode 100644 semantic/compare_system.invalid.java create mode 100644 semantic/compare_system_in.invalid.java create mode 100644 semantic/compare_system_null.invalid.java create mode 100644 semantic/compare_system_out.invalid.java create mode 100644 semantic/invalid_compare_null_int.invalid.mj create mode 100644 semantic/missing_return_value.invalid.mj diff --git a/semantic/array_creation_boolean.invalid.mj b/semantic/array_creation_boolean.invalid.mj new file mode 100644 index 0000000..8cd4ed5 --- /dev/null +++ b/semantic/array_creation_boolean.invalid.mj @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + int[] a = new int[false]; + } +} diff --git a/semantic/array_creation_ident.invalid.mj b/semantic/array_creation_ident.invalid.mj new file mode 100644 index 0000000..5ecb908 --- /dev/null +++ b/semantic/array_creation_ident.invalid.mj @@ -0,0 +1,6 @@ +class Test { + public static void main(String[] args) { + Test test = null; + int[] a = new int[test]; + } +} diff --git a/semantic/array_creation_null.invalid.mj b/semantic/array_creation_null.invalid.mj new file mode 100644 index 0000000..f4b4c85 --- /dev/null +++ b/semantic/array_creation_null.invalid.mj @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + int[] a = new int[null]; + } +} diff --git a/semantic/call_method_on_assignment.java b/semantic/call_method_on_assignment.java new file mode 100644 index 0000000..b837887 --- /dev/null +++ b/semantic/call_method_on_assignment.java @@ -0,0 +1,19 @@ +class Test { + public static void main(String[] args) { + Test test = null; + (test = new Test()).test(); + (test = new Test()).test = 5; + (test.test()).test(); + + Test[] tests = null; + (tests = new Test[5])[0].test(); + + new Test[5][0].test(); + } + + public Test test() { + return this; + } + + public int test; +} diff --git a/semantic/call_method_on_undefined_type.invalid.mj b/semantic/call_method_on_undefined_type.invalid.mj new file mode 100644 index 0000000..4b3ead8 --- /dev/null +++ b/semantic/call_method_on_undefined_type.invalid.mj @@ -0,0 +1,8 @@ +class Test { + public static void main(String[] args) { + Foo foo = new Foo(); + foo.foo(); + foo.foo = 123; + foo.main(null); + } +} diff --git a/semantic/compare_system.invalid.java b/semantic/compare_system.invalid.java new file mode 100644 index 0000000..412f1e1 --- /dev/null +++ b/semantic/compare_system.invalid.java @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + boolean test = System == System; + } +} diff --git a/semantic/compare_system_in.invalid.java b/semantic/compare_system_in.invalid.java new file mode 100644 index 0000000..5456549 --- /dev/null +++ b/semantic/compare_system_in.invalid.java @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + boolean test = System.in == System.in; + } +} diff --git a/semantic/compare_system_null.invalid.java b/semantic/compare_system_null.invalid.java new file mode 100644 index 0000000..7d063eb --- /dev/null +++ b/semantic/compare_system_null.invalid.java @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + boolean test = System.out == null; + } +} diff --git a/semantic/compare_system_out.invalid.java b/semantic/compare_system_out.invalid.java new file mode 100644 index 0000000..04ae1db --- /dev/null +++ b/semantic/compare_system_out.invalid.java @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + boolean test = System.out == System.out; + } +} diff --git a/semantic/invalid_compare_null_int.invalid.mj b/semantic/invalid_compare_null_int.invalid.mj new file mode 100644 index 0000000..49b29d8 --- /dev/null +++ b/semantic/invalid_compare_null_int.invalid.mj @@ -0,0 +1,5 @@ +class Test { + public static void main(String[] args) { + boolean b = null && 2; + } +} diff --git a/semantic/missing_return_value.invalid.mj b/semantic/missing_return_value.invalid.mj new file mode 100644 index 0000000..9968509 --- /dev/null +++ b/semantic/missing_return_value.invalid.mj @@ -0,0 +1,7 @@ +class Test { + public static void main(String[] args) { + } + public int foo() { + return; + } +} -- GitLab