From c7238e65cf88beb7ac7653eca1a195486b9e3575 Mon Sep 17 00:00:00 2001 From: Michael Ernst Date: Thu, 1 Dec 2022 07:53:47 -0800 Subject: [PATCH] Test case for issue #5412 --- .../tests/nullness/SwitchTestIssue5412.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 checker/tests/nullness/SwitchTestIssue5412.java diff --git a/checker/tests/nullness/SwitchTestIssue5412.java b/checker/tests/nullness/SwitchTestIssue5412.java new file mode 100644 index 00000000000..43fbea46ca0 --- /dev/null +++ b/checker/tests/nullness/SwitchTestIssue5412.java @@ -0,0 +1,40 @@ +// Test case for https://github.com/typetools/checker-framework/issues/5412 + +// @below-java17-jdk-skip-test + +enum MyEnum { + VAL1, + VAL2, + VAL3 +} + +class SwitchTestExhaustive { + public String foo1(MyEnum b) { + final var s = + switch (b) { + case VAL1 -> "1"; + case VAL2 -> "2"; + case VAL3 -> "3"; + }; + return s; + } + + public String foo2(MyEnum b) { + final var s = + switch (b) { + case VAL1 -> "1"; + case VAL2 -> "2"; + case VAL3 -> "3"; + default -> throw new RuntimeException(); + }; + return s; + } + + public String foo3(MyEnum b) { + return switch (b) { + case VAL1 -> "1"; + case VAL2 -> "2"; + case VAL3 -> "3"; + }; + } +}