Script refactoring, frontend tests: changes according to semantic changes in scripts

Add checker tests for scripts
This commit is contained in:
Pavel V. Talanov
2015-11-19 14:16:42 +03:00
parent efa4bf1d74
commit 2b955bc6ec
13 changed files with 136 additions and 8 deletions
@@ -2,8 +2,14 @@ package
public final class Script {
public constructor Script()
public final val rv: [ERROR : getBlockReturnedType returned null]
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
public final annotation class Ann : kotlin.Annotation {
public constructor Ann()
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
}
}
@@ -0,0 +1,12 @@
// FILE: f1.kt
package test
class <!REDECLARATION!>A<!>
class F1
// FILE: A.kts
package test
val x = 1
class F1
@@ -0,0 +1,33 @@
package
package test {
public final class A {
public constructor A()
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
}
public final class A {
public constructor A()
public final val x: kotlin.Int = 1
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
public final class F1 {
public constructor F1()
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
}
}
public final class F1 {
public constructor F1()
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
}
}
@@ -1,3 +1,3 @@
val x = <!UNRESOLVED_REFERENCE!>y<!>
val x = <!UNINITIALIZED_VARIABLE!>y<!>
val y = 2
@@ -2,7 +2,8 @@ package
public final class AccessForwardDeclarationInScript {
public constructor AccessForwardDeclarationInScript()
public final val rv: kotlin.Unit
public final val x: kotlin.Int = 2
public final val y: kotlin.Int = 2
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
@@ -1,4 +1,4 @@
fun foo(x: Int) = 1
fun foo(<!UNUSED_PARAMETER!>x<!>: Int) = 1
val y = 2
@@ -2,8 +2,9 @@ package
public final class ComplexScript {
public constructor ComplexScript()
public final val rv: kotlin.Int
public final val y: kotlin.Int = 2
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(/*0*/ x: kotlin.Int): kotlin.Int
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -0,0 +1,24 @@
// documents inconsistency between scripts and classes, see DeclarationScopeProviderImpl
fun function() = 42
val property = ""
class Nested {
fun f() = <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>function()<!>
fun g() = <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>property<!>
}
inner class Inner {
fun innerFun() = function()
val innerProp = property
fun innerThisFun() = this@NestedInnerClass.function()
val innerThisProp = this@NestedInnerClass.property
inner class InnerInner {
fun f() = innerFun()
fun g() = innerProp
fun h() = this@Inner.innerFun()
fun i() = this@Inner.innerProp
}
}
@@ -0,0 +1,41 @@
package
public final class NestedInnerClass {
public constructor NestedInnerClass()
public final val property: kotlin.String = ""
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun function(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final inner class Inner {
public constructor Inner()
public final val innerProp: kotlin.String = ""
public final val innerThisProp: kotlin.String = ""
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 final fun innerFun(): kotlin.Int
public final fun innerThisFun(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final inner class InnerInner {
public constructor InnerInner()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun f(): kotlin.Int
public final fun g(): kotlin.String
public final fun h(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final fun i(): kotlin.String
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
public final class Nested {
public constructor Nested()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun f(): kotlin.Int
public final fun g(): kotlin.String
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -2,7 +2,7 @@ package
public final class SimpleScript {
public constructor SimpleScript()
public final val rv: kotlin.Unit
public final val x: kotlin.Int = 1
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
@@ -3,7 +3,6 @@ package
public final class Imports {
public constructor Imports()
public final val al: java.util.ArrayList<kotlin.String>? = null
public final val rv: kotlin.Unit
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
@@ -2,7 +2,6 @@ package
public final class Script {
public constructor Script()
public final val rv: kotlin.Unit
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 final fun main(): kotlin.Boolean
@@ -12276,6 +12276,12 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
doTest(fileName);
}
@TestMetadata("ScriptAndClassConflict.kt")
public void testScriptAndClassConflict() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/redeclarations/ScriptAndClassConflict.kt");
doTest(fileName);
}
@TestMetadata("SingletonAndFunctionSameName.kt")
public void testSingletonAndFunctionSameName() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/redeclarations/SingletonAndFunctionSameName.kt");
@@ -17392,6 +17398,12 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
doTest(fileName);
}
@TestMetadata("NestedInnerClass.kts")
public void testNestedInnerClass() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/script/NestedInnerClass.kts");
doTest(fileName);
}
@TestMetadata("SimpleScript.kts")
public void testSimpleScript() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/script/SimpleScript.kts");