summaryrefslogtreecommitdiff
path: root/test/junit
diff options
context:
space:
mode:
authorStefan Zeiger <szeiger@novocode.com>2016-08-12 16:24:44 +0200
committerGitHub <noreply@github.com>2016-08-12 16:24:44 +0200
commit0d9587a563ff26852732e9bb751f601972fecddc (patch)
tree45a58df0c2c749417e0af6e5a7ba798ffe8f8ed4 /test/junit
parent14c02acf4c398bcfe293754ea4757b461f4aa653 (diff)
parent30876fe2dd8cbe657a6cad6b11bbc34f10c29b36 (diff)
downloadscala-0d9587a563ff26852732e9bb751f601972fecddc.tar.gz
scala-0d9587a563ff26852732e9bb751f601972fecddc.tar.bz2
scala-0d9587a563ff26852732e9bb751f601972fecddc.zip
Merge pull request #5258 from szeiger/issue/9019
SI-9019 TraversableLike stringPrefix broken for inner classes
Diffstat (limited to 'test/junit')
-rw-r--r--test/junit/scala/collection/TraversableLikeTest.scala33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/junit/scala/collection/TraversableLikeTest.scala b/test/junit/scala/collection/TraversableLikeTest.scala
new file mode 100644
index 0000000000..8588956016
--- /dev/null
+++ b/test/junit/scala/collection/TraversableLikeTest.scala
@@ -0,0 +1,33 @@
+package scala.collection
+
+import org.junit.Assert._
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.junit.runners.JUnit4
+
+@RunWith(classOf[JUnit4])
+class TraversableLikeTest {
+ // For test_SI9019; out here because as of test writing, putting this in a method would crash compiler
+ class Baz[@specialized(Int) A]() extends IndexedSeq[A] {
+ def apply(i: Int) = ???
+ def length: Int = 0
+ }
+
+ @Test
+ def test_SI9019 {
+ object Foo {
+ def mkBar = () => {
+ class Bar extends IndexedSeq[Int] {
+ def apply(i: Int) = ???
+ def length: Int = 0
+ }
+ new Bar
+ }
+ }
+ val bar = Foo.mkBar()
+ assertEquals("Bar", bar.stringPrefix) // Previously would have been outermost class, TraversableLikeTest
+
+ val baz = new Baz[Int]()
+ assertEquals("TraversableLikeTest.Baz", baz.stringPrefix) // Make sure we don't see specialization $mcI$sp stuff
+ }
+}