From db457a612cf0a05855b2638724e7e12fdcb84984 Mon Sep 17 00:00:00 2001 From: Stanislav Erokhin Date: Mon, 1 Dec 2014 21:40:04 +0300 Subject: [PATCH] Add test (recursive resolve in property declaration) to JetPsiChecker --- .../diagnostics/tests/RecursiveResolve.kt | 14 ++++++++++++++ .../diagnostics/tests/RecursiveResolve.txt | 18 ++++++++++++++++++ .../checkers/JetDiagnosticsTestGenerated.java | 6 ++++++ 3 files changed, 38 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/RecursiveResolve.kt create mode 100644 compiler/testData/diagnostics/tests/RecursiveResolve.txt diff --git a/compiler/testData/diagnostics/tests/RecursiveResolve.kt b/compiler/testData/diagnostics/tests/RecursiveResolve.kt new file mode 100644 index 00000000000..119c3075eeb --- /dev/null +++ b/compiler/testData/diagnostics/tests/RecursiveResolve.kt @@ -0,0 +1,14 @@ +class Test(foo: Any?, bar: Any?) { + val foo = foo ?: this + private val bar = bar ?: this + private val bas = bas() + val bas2 = bas2() + + private fun bas(): Int = null!! + private fun bas2(): Int = null!! + + fun bar() = bar(1) + fun bar(i: Int) = 2 + private fun bar2() = bar2(1) + private fun bar2(i: Int) = 2 +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/RecursiveResolve.txt b/compiler/testData/diagnostics/tests/RecursiveResolve.txt new file mode 100644 index 00000000000..0aba2a88654 --- /dev/null +++ b/compiler/testData/diagnostics/tests/RecursiveResolve.txt @@ -0,0 +1,18 @@ +package + +internal final class Test { + public constructor Test(/*0*/ foo: kotlin.Any?, /*1*/ bar: kotlin.Any?) + private final val bar: kotlin.Any + private final val bas: kotlin.Int + internal final val bas2: kotlin.Int + internal final val foo: kotlin.Any + internal final fun bar(): kotlin.Int + internal final fun bar(/*0*/ i: kotlin.Int): kotlin.Int + private final fun bar2(): kotlin.Int + private final fun bar2(/*0*/ i: kotlin.Int): kotlin.Int + private final fun bas(): kotlin.Int + private final fun bas2(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} diff --git a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java index e6c889ab030..01921cf97c8 100644 --- a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java @@ -382,6 +382,12 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest { doTest(fileName); } + @TestMetadata("RecursiveResolve.kt") + public void testRecursiveResolve() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/RecursiveResolve.kt"); + doTest(fileName); + } + @TestMetadata("RecursiveTypeInference.kt") public void testRecursiveTypeInference() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/RecursiveTypeInference.kt");