aboutsummaryrefslogtreecommitdiff
path: root/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java
diff options
context:
space:
mode:
Diffstat (limited to 'nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java')
-rw-r--r--nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java b/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java
index f8f3ed6..3649de9 100644
--- a/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java
+++ b/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java
@@ -960,4 +960,45 @@ public class NullAwayCoreTests extends NullAwayTestsBase {
"}")
.doTest();
}
+
+ /**
+ * This test exposes a failure in CFG construction in Checker Framework 3.41.0 and above. Once a
+ * fix for this issue makes it to a Checker Framework release, we can probably remove this test.
+ * See https://github.com/typetools/checker-framework/issues/6396.
+ */
+ @Test
+ public void cfgConstructionSymbolCompletionFailure() {
+ defaultCompilationHelper
+ .addSourceLines(
+ "Test.java",
+ "package com.uber;",
+ "import org.apache.spark.sql.SparkSession;",
+ "class Test {",
+ " static class X {",
+ " X(SparkSession session) {}",
+ " }",
+ " X run() {",
+ " try (SparkSession session = SparkSession.builder().getOrCreate()) {",
+ " return new X(session);",
+ " }",
+ " }",
+ "}")
+ .doTest();
+ }
+
+ @Test
+ public void testDefaultEqualsInInterfaceTakesNullable() {
+ defaultCompilationHelper
+ .addSourceLines(
+ "Test.java",
+ "package com.uber;",
+ "import javax.annotation.Nullable;",
+ "class Test {",
+ " public interface AnInterface {}",
+ " public static boolean foo(AnInterface a, @Nullable AnInterface b) {",
+ " return a.equals(b);",
+ " }",
+ "}")
+ .doTest();
+ }
}