Simple LR Tests don't need to compare all the packages in the world

This commit is contained in:
Andrey Breslav
2012-07-26 17:41:46 +04:00
parent dabd2ef4ad
commit 2923c1f32e
16 changed files with 61 additions and 53 deletions
@@ -1,3 +1,5 @@
package test
class B { class B {
class B { class B {
fun foo(b: B.C) { fun foo(b: B.C) {
@@ -1,12 +1,12 @@
namespace <root> namespace test
internal final class B : jet.Any { internal final class test.B : jet.Any {
public final /*constructor*/ fun <init>(): B public final /*constructor*/ fun <init>(): test.B
internal final class B.B : jet.Any { internal final class test.B.B : jet.Any {
public final /*constructor*/ fun <init>(): B.B public final /*constructor*/ fun <init>(): test.B.B
internal final class B.B.C : jet.Any { internal final fun foo(/*0*/ b: test.B.B.C): jet.Tuple0
public final /*constructor*/ fun <init>(): B.B.C internal final class test.B.B.C : jet.Any {
public final /*constructor*/ fun <init>(): test.B.B.C
} }
internal final fun foo(/*0*/ b: B.B.C): jet.Tuple0
} }
} }
@@ -1,3 +1,5 @@
package test
enum class Test(a : Int) { enum class Test(a : Int) {
A : Test(0) A : Test(0)
B(x : Int) : Test(x) B(x : Int) : Test(x)
@@ -1,10 +1,10 @@
namespace <root> namespace test
internal final enum class Test : jet.Any { internal final enum class test.Test : jet.Any {
public final /*constructor*/ fun <init>(/*0*/ a: jet.Int): Test public final /*constructor*/ fun <init>(/*0*/ a: jet.Int): test.Test
internal final class object Test.<class-object-for-Test> { internal final class object test.Test.<class-object-for-Test> {
internal final /*constructor*/ fun <init>(): Test.<class-object-for-Test> internal final /*constructor*/ fun <init>(): test.Test.<class-object-for-Test>
internal final val A: Test.<class-object-for-Test>.A internal final val A: test.Test.<class-object-for-Test>.A
internal final val C: Test.<class-object-for-Test>.C internal final val C: test.Test.<class-object-for-Test>.C
} }
} }
@@ -1 +1,3 @@
package test
fun <T> foo(t : T) : T {} fun <T> foo(t : T) : T {}
@@ -1,3 +1,3 @@
namespace <root> namespace test
internal final fun </*0*/ T : jet.Any?>foo(/*0*/ t: T): T internal final fun </*0*/ T : jet.Any?>foo(/*0*/ t: T): T
@@ -1,3 +1,5 @@
package test
class B { class B {
object Obj {} object Obj {}
} }
@@ -1,6 +1,6 @@
namespace <root> namespace test
internal final class B : jet.Any { internal final class test.B : jet.Any {
public final /*constructor*/ fun <init>(): B public final /*constructor*/ fun <init>(): test.B
internal final val Obj: B.Obj internal final val Obj: test.B.Obj
} }
@@ -1,4 +1,4 @@
package foo package test
object Bar { object Bar {
} }
@@ -1,7 +1,3 @@
namespace <root> namespace test
// <namespace name="foo"> internal final val Bar: test.Bar
namespace foo
internal final val Bar: foo.Bar
// </namespace name="foo">
@@ -1,17 +1,19 @@
// FILE: a.kt // FILE: a.kt
package test
class A {} class A {}
// FILE: b.kt // FILE: b.kt
package p; class C {fun f() {}} package test.p; class C {fun f() {}}
// FILE: c.kt // FILE: c.kt
package p; open class G<T> {open fun f(): T {} fun a() {}} package test.p; open class G<T> {open fun f(): T {} fun a() {}}
// FILE: d.kt // FILE: d.kt
package p; class G2<E> : G<E> { fun g() : E {} override fun f() : E {}} package test.p; class G2<E> : G<E> { fun g() : E {} override fun f() : E {}}
// FILE: e.kt // FILE: e.kt
package p; fun foo() {} package test.p; fun foo() {}
// FILE: f.kt // FILE: f.kt
package p; fun foo(a: C) {} package test.p; fun foo(a: C) {}
@@ -1,26 +1,26 @@
namespace <root> namespace test
// <namespace name="p"> // <namespace name="p">
namespace p namespace p
internal final class p.C : jet.Any { internal final class test.p.C : jet.Any {
public final /*constructor*/ fun <init>(): p.C public final /*constructor*/ fun <init>(): test.p.C
internal final fun f(): jet.Tuple0 internal final fun f(): jet.Tuple0
} }
internal open class p.G</*0*/ T : jet.Any?> : jet.Any { internal open class test.p.G</*0*/ T : jet.Any?> : jet.Any {
public final /*constructor*/ fun </*0*/ T : jet.Any?><init>(): p.G<T> public final /*constructor*/ fun </*0*/ T : jet.Any?><init>(): test.p.G<T>
internal final fun a(): jet.Tuple0 internal final fun a(): jet.Tuple0
internal open fun f(): T internal open fun f(): T
} }
internal final class p.G2</*0*/ E : jet.Any?> : p.G<E> { internal final class test.p.G2</*0*/ E : jet.Any?> : test.p.G<E> {
public final /*constructor*/ fun </*0*/ E : jet.Any?><init>(): p.G2<E> public final /*constructor*/ fun </*0*/ E : jet.Any?><init>(): test.p.G2<E>
internal final override /*1*/ fun a(): jet.Tuple0 internal final override /*1*/ fun a(): jet.Tuple0
internal open override /*1*/ fun f(): E internal open override /*1*/ fun f(): E
internal final fun g(): E internal final fun g(): E
} }
internal final fun foo(): jet.Tuple0 internal final fun foo(): jet.Tuple0
internal final fun foo(/*0*/ a: p.C): jet.Tuple0 internal final fun foo(/*0*/ a: test.p.C): jet.Tuple0
// </namespace name="p"> // </namespace name="p">
internal final class A : jet.Any { internal final class test.A : jet.Any {
public final /*constructor*/ fun <init>(): A public final /*constructor*/ fun <init>(): test.A
} }
@@ -1,3 +1,5 @@
package test
class CompositeIterator<T>(vararg iterators: java.util.Iterator<T>){ class CompositeIterator<T>(vararg iterators: java.util.Iterator<T>){
val iteratorsIter = iterators.iterator() val iteratorsIter = iterators.iterator()
} }
@@ -1,6 +1,6 @@
namespace <root> namespace test
internal final class CompositeIterator</*0*/ T : jet.Any?> : jet.Any { internal final class test.CompositeIterator</*0*/ T : jet.Any?> : jet.Any {
public final /*constructor*/ fun </*0*/ T : jet.Any?><init>(/*0*/ vararg iterators: java.util.Iterator<T> /*jet.Array<java.util.Iterator<T>>*/): CompositeIterator<T> public final /*constructor*/ fun </*0*/ T : jet.Any?><init>(/*0*/ vararg iterators: java.util.Iterator<T> /*jet.Array<java.util.Iterator<T>>*/): test.CompositeIterator<T>
internal final val iteratorsIter: jet.Iterator<java.util.Iterator<T>> internal final val iteratorsIter: jet.Iterator<java.util.Iterator<T>>
} }
@@ -150,7 +150,7 @@ public abstract class AbstractLazyResolveNamespaceComparingTest extends KotlinTe
new SimpleTestClassModel(new File("compiler/testData/lazyResolve/namespaceComparator"), new SimpleTestClassModel(new File("compiler/testData/lazyResolve/namespaceComparator"),
true, true,
extension, extension,
"doTest") "doTestSinglePackage")
), ),
AbstractLazyResolveNamespaceComparingTest.class AbstractLazyResolveNamespaceComparingTest.class
).generateAndSave(); ).generateAndSave();
@@ -1269,37 +1269,37 @@ public class LazyResolveNamespaceComparingTestGenerated extends AbstractLazyReso
@TestMetadata("enum.kt") @TestMetadata("enum.kt")
public void testEnum() throws Exception { public void testEnum() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/enum.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/enum.kt");
} }
@TestMetadata("genericFunction.kt") @TestMetadata("genericFunction.kt")
public void testGenericFunction() throws Exception { public void testGenericFunction() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/genericFunction.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/genericFunction.kt");
} }
@TestMetadata("InnerClassNameClash.kt") @TestMetadata("InnerClassNameClash.kt")
public void testInnerClassNameClash() throws Exception { public void testInnerClassNameClash() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/InnerClassNameClash.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/InnerClassNameClash.kt");
} }
@TestMetadata("innerObject.kt") @TestMetadata("innerObject.kt")
public void testInnerObject() throws Exception { public void testInnerObject() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/innerObject.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/innerObject.kt");
} }
@TestMetadata("packageLevelObject.kt") @TestMetadata("packageLevelObject.kt")
public void testPackageLevelObject() throws Exception { public void testPackageLevelObject() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/packageLevelObject.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/packageLevelObject.kt");
} }
@TestMetadata("simpleClass.kt") @TestMetadata("simpleClass.kt")
public void testSimpleClass() throws Exception { public void testSimpleClass() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/simpleClass.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/simpleClass.kt");
} }
@TestMetadata("varargIterator.kt") @TestMetadata("varargIterator.kt")
public void testVarargIterator() throws Exception { public void testVarargIterator() throws Exception {
doTest("compiler/testData/lazyResolve/namespaceComparator/varargIterator.kt"); doTestSinglePackage("compiler/testData/lazyResolve/namespaceComparator/varargIterator.kt");
} }
} }