From 5f2be94ca487cb35a1613bd2651f93de87d08100 Mon Sep 17 00:00:00 2001 From: Paul Phillips Date: Wed, 16 Nov 2011 00:36:22 +0000 Subject: Disabled broken test, review by odersky. --- test/disabled/run/reflection-implClass.scala | 38 ++++++++++++++++++++++++++++ test/files/run/reflection-implClass.scala | 38 ---------------------------- 2 files changed, 38 insertions(+), 38 deletions(-) create mode 100644 test/disabled/run/reflection-implClass.scala delete mode 100644 test/files/run/reflection-implClass.scala (limited to 'test') diff --git a/test/disabled/run/reflection-implClass.scala b/test/disabled/run/reflection-implClass.scala new file mode 100644 index 0000000000..2b9e6f426f --- /dev/null +++ b/test/disabled/run/reflection-implClass.scala @@ -0,0 +1,38 @@ +/** + * Tries to load a symbol for the `Foo$class` using Scala reflection. + * Since trait implementation classes do not get pickling information + * symbol for them should be created using fallback mechanism + * that exposes Java reflection information dressed up in + * a Scala symbol. + */ +object Test extends App with Outer { + import scala.reflect.mirror + + assert(mirror.classToSymbol(manifest[Foo].erasure).info.decl(mirror.newTermName("bar")).info == + mirror.classToSymbol(manifest[Bar].erasure).info.decl(mirror.newTermName("foo")).info) + + val s1 = implClass(manifest[Foo].erasure) + assert(s1 != mirror.NoSymbol) + assert(s1.info != mirror.NoType) + assert(s1.companionModule.info != mirror.NoType) + assert(s1.companionModule.info.decl(mirror.newTermName("bar")) != mirror.NoSymbol) + val s2 = implClass(manifest[Bar].erasure) + assert(s2 != mirror.NoSymbol) + assert(s2.info != mirror.NoType) + assert(s2.companionModule.info != mirror.NoType) + assert(s2.companionModule.info.decl(mirror.newTermName("foo")) != mirror.NoSymbol) + def implClass(clazz: Class[_]) = { + val implClass = Class.forName(clazz.getName + "$class") + mirror.classToSymbol(implClass) + } +} + +trait Foo { + def bar = 1 +} + +trait Outer { + trait Bar { + def foo = 1 + } +} diff --git a/test/files/run/reflection-implClass.scala b/test/files/run/reflection-implClass.scala deleted file mode 100644 index 2b9e6f426f..0000000000 --- a/test/files/run/reflection-implClass.scala +++ /dev/null @@ -1,38 +0,0 @@ -/** - * Tries to load a symbol for the `Foo$class` using Scala reflection. - * Since trait implementation classes do not get pickling information - * symbol for them should be created using fallback mechanism - * that exposes Java reflection information dressed up in - * a Scala symbol. - */ -object Test extends App with Outer { - import scala.reflect.mirror - - assert(mirror.classToSymbol(manifest[Foo].erasure).info.decl(mirror.newTermName("bar")).info == - mirror.classToSymbol(manifest[Bar].erasure).info.decl(mirror.newTermName("foo")).info) - - val s1 = implClass(manifest[Foo].erasure) - assert(s1 != mirror.NoSymbol) - assert(s1.info != mirror.NoType) - assert(s1.companionModule.info != mirror.NoType) - assert(s1.companionModule.info.decl(mirror.newTermName("bar")) != mirror.NoSymbol) - val s2 = implClass(manifest[Bar].erasure) - assert(s2 != mirror.NoSymbol) - assert(s2.info != mirror.NoType) - assert(s2.companionModule.info != mirror.NoType) - assert(s2.companionModule.info.decl(mirror.newTermName("foo")) != mirror.NoSymbol) - def implClass(clazz: Class[_]) = { - val implClass = Class.forName(clazz.getName + "$class") - mirror.classToSymbol(implClass) - } -} - -trait Foo { - def bar = 1 -} - -trait Outer { - trait Bar { - def foo = 1 - } -} -- cgit v1.2.3