diff options
author | Guillaume Martres <smarter@ubuntu.com> | 2016-10-28 22:52:16 +0200 |
---|---|---|
committer | Guillaume Martres <smarter@ubuntu.com> | 2016-11-22 01:35:06 +0100 |
commit | 0dc738dd1377577a4004bfe158b11bfb1fa59a9d (patch) | |
tree | 0756502d63341e2503254ca19f37693271c31220 /tests/pos-java-interop | |
parent | 02a29c9f2127ea7b0cb0b05facd3afe8e2ec256a (diff) | |
download | dotty-0dc738dd1377577a4004bfe158b11bfb1fa59a9d.tar.gz dotty-0dc738dd1377577a4004bfe158b11bfb1fa59a9d.tar.bz2 dotty-0dc738dd1377577a4004bfe158b11bfb1fa59a9d.zip |
Fix partest compilation of java-interop tests by moving them
Previously, the tests where all in tests/pos/java-interop which means
that partest would try to run them as one single test, this failed
because some of these tests define classes with the same name. We could
fix this by putting them all in separate packages but for now it's
simple to move them to tests/pos-java-interop (they will still be run
individually as they should thanks to the `java_all` test defined in
tests.scala)
Diffstat (limited to 'tests/pos-java-interop')
75 files changed, 356 insertions, 0 deletions
diff --git a/tests/pos-java-interop/1576/TagAnnotation.java b/tests/pos-java-interop/1576/TagAnnotation.java new file mode 100644 index 000000000..3034a1a2d --- /dev/null +++ b/tests/pos-java-interop/1576/TagAnnotation.java @@ -0,0 +1,3 @@ +public @interface TagAnnotation { + public String value(); +}
\ No newline at end of file diff --git a/tests/pos-java-interop/1576/Test.scala b/tests/pos-java-interop/1576/Test.scala new file mode 100644 index 000000000..ea3d06a83 --- /dev/null +++ b/tests/pos-java-interop/1576/Test.scala @@ -0,0 +1,5 @@ +object Test { + val v: TagAnnotation = null + println(v.value) // error: value value in class TagAnnotation cannot be accessed as a + // member of TagAnnotation(Test.v) from module class Test$. +} diff --git a/tests/pos-java-interop/i879.java b/tests/pos-java-interop/i879.java new file mode 100644 index 000000000..6db5b77ff --- /dev/null +++ b/tests/pos-java-interop/i879.java @@ -0,0 +1,11 @@ +class Foo { + Foo(int i) { + } +} + + +class Bar extends Foo { + Bar() { + super(10); + } +}
\ No newline at end of file diff --git a/tests/pos-java-interop/t0288/Foo.scala b/tests/pos-java-interop/t0288/Foo.scala new file mode 100644 index 000000000..778ba65f5 --- /dev/null +++ b/tests/pos-java-interop/t0288/Foo.scala @@ -0,0 +1,9 @@ +package test2; + +import test.Outer; + +class Foo extends Outer{ + + val bar = new Inner(); // Shouldn't this work? + +} diff --git a/tests/pos-java-interop/t0288/Outer.java b/tests/pos-java-interop/t0288/Outer.java new file mode 100644 index 000000000..bea3e3f8d --- /dev/null +++ b/tests/pos-java-interop/t0288/Outer.java @@ -0,0 +1,9 @@ +package test; + +public class Outer{ + + public class Inner{ + + } + +} diff --git a/tests/pos-java-interop/t0695/JavaClass.java b/tests/pos-java-interop/t0695/JavaClass.java new file mode 100644 index 000000000..a765f7e32 --- /dev/null +++ b/tests/pos-java-interop/t0695/JavaClass.java @@ -0,0 +1,5 @@ +public class JavaClass<A> { + class InnerClass { + public A method() { return null; } + } +} diff --git a/tests/pos-java-interop/t0695/Test.scala b/tests/pos-java-interop/t0695/Test.scala new file mode 100644 index 000000000..7318867bf --- /dev/null +++ b/tests/pos-java-interop/t0695/Test.scala @@ -0,0 +1,3 @@ +object Test extends JavaClass[AnyRef] { + var field: InnerClass = null +} diff --git a/tests/pos-java-interop/t1101/J.java b/tests/pos-java-interop/t1101/J.java new file mode 100644 index 000000000..2bc1d53e0 --- /dev/null +++ b/tests/pos-java-interop/t1101/J.java @@ -0,0 +1 @@ +class J { enum E { E1 } } diff --git a/tests/pos-java-interop/t1101/S.scala b/tests/pos-java-interop/t1101/S.scala new file mode 100644 index 000000000..af7a591e5 --- /dev/null +++ b/tests/pos-java-interop/t1101/S.scala @@ -0,0 +1 @@ +class S { val x: J.E = null; System.out.println(J.E.E1) } diff --git a/tests/pos-java-interop/t1102/J.java b/tests/pos-java-interop/t1102/J.java new file mode 100644 index 000000000..530102b91 --- /dev/null +++ b/tests/pos-java-interop/t1102/J.java @@ -0,0 +1,4 @@ +class J { + enum E { E1 } + void foo(E e) { } +} diff --git a/tests/pos-java-interop/t1102/S.scala b/tests/pos-java-interop/t1102/S.scala new file mode 100644 index 000000000..9beee8d90 --- /dev/null +++ b/tests/pos-java-interop/t1102/S.scala @@ -0,0 +1 @@ +class S(j:J) { j.foo(J.E.E1) } diff --git a/tests/pos-java-interop/t1150/J.java b/tests/pos-java-interop/t1150/J.java new file mode 100644 index 000000000..68fa04a17 --- /dev/null +++ b/tests/pos-java-interop/t1150/J.java @@ -0,0 +1,4 @@ +class J { + static void bbb (Boolean b) { } + static void ddd (Double d) { } +} diff --git a/tests/pos-java-interop/t1150/S.scala b/tests/pos-java-interop/t1150/S.scala new file mode 100644 index 000000000..41dd06403 --- /dev/null +++ b/tests/pos-java-interop/t1150/S.scala @@ -0,0 +1,4 @@ +object S { + J.bbb(new java.lang.Boolean(true)) + J.ddd(new java.lang.Double(0)) +} diff --git a/tests/pos-java-interop/t1152/J.java b/tests/pos-java-interop/t1152/J.java new file mode 100644 index 000000000..6e562e573 --- /dev/null +++ b/tests/pos-java-interop/t1152/J.java @@ -0,0 +1 @@ +class J { java.util.List<String> k = null; } diff --git a/tests/pos-java-interop/t1152/S.scala b/tests/pos-java-interop/t1152/S.scala new file mode 100644 index 000000000..7f751c509 --- /dev/null +++ b/tests/pos-java-interop/t1152/S.scala @@ -0,0 +1,2 @@ +class S2(fn:(J)=>Any) +object S { new S2(_.k) } diff --git a/tests/pos-java-interop/t1176/J.java b/tests/pos-java-interop/t1176/J.java new file mode 100644 index 000000000..0d82c75fc --- /dev/null +++ b/tests/pos-java-interop/t1176/J.java @@ -0,0 +1,4 @@ +class J { + J() { } + J( java.util.Collection<?> collection ) { } +} diff --git a/tests/pos-java-interop/t1176/S.scala b/tests/pos-java-interop/t1176/S.scala new file mode 100644 index 000000000..a7fc3e0ce --- /dev/null +++ b/tests/pos-java-interop/t1176/S.scala @@ -0,0 +1 @@ +class S { new J } diff --git a/tests/pos-java-interop/t1186/t1186.java b/tests/pos-java-interop/t1186/t1186.java new file mode 100644 index 000000000..5f2607623 --- /dev/null +++ b/tests/pos-java-interop/t1186/t1186.java @@ -0,0 +1,8 @@ +import scala.collection.immutable.Map; + +class Test { + + void foo() { + Map<String, String> map = null; + } +} diff --git a/tests/pos-java-interop/t1196/J.java b/tests/pos-java-interop/t1196/J.java new file mode 100644 index 000000000..2ec7a711b --- /dev/null +++ b/tests/pos-java-interop/t1196/J.java @@ -0,0 +1 @@ +class J { static void foo(Class c) { } } diff --git a/tests/pos-java-interop/t1196/S.scala b/tests/pos-java-interop/t1196/S.scala new file mode 100644 index 000000000..f17cd249a --- /dev/null +++ b/tests/pos-java-interop/t1196/S.scala @@ -0,0 +1 @@ +object S { J.foo(null) } diff --git a/tests/pos-java-interop/t1197/J.java b/tests/pos-java-interop/t1197/J.java new file mode 100644 index 000000000..b4e0a4255 --- /dev/null +++ b/tests/pos-java-interop/t1197/J.java @@ -0,0 +1,2 @@ +class J { interface K { } } + diff --git a/tests/pos-java-interop/t1197/S.scala b/tests/pos-java-interop/t1197/S.scala new file mode 100644 index 000000000..7c9c15440 --- /dev/null +++ b/tests/pos-java-interop/t1197/S.scala @@ -0,0 +1,2 @@ +object S extends J.K + diff --git a/tests/pos-java-interop/t1203b/J.java b/tests/pos-java-interop/t1203b/J.java new file mode 100644 index 000000000..7fae118e0 --- /dev/null +++ b/tests/pos-java-interop/t1203b/J.java @@ -0,0 +1 @@ +interface J { int j = 200 ; } diff --git a/tests/pos-java-interop/t1203b/S.scala b/tests/pos-java-interop/t1203b/S.scala new file mode 100644 index 000000000..68eac4bf6 --- /dev/null +++ b/tests/pos-java-interop/t1203b/S.scala @@ -0,0 +1 @@ +object S { J.j } diff --git a/tests/pos-java-interop/t1230/J.java b/tests/pos-java-interop/t1230/J.java new file mode 100644 index 000000000..35aefd250 --- /dev/null +++ b/tests/pos-java-interop/t1230/J.java @@ -0,0 +1 @@ +class J { public int foo ; } diff --git a/tests/pos-java-interop/t1230/S.scala b/tests/pos-java-interop/t1230/S.scala new file mode 100644 index 000000000..530dd4b85 --- /dev/null +++ b/tests/pos-java-interop/t1230/S.scala @@ -0,0 +1 @@ +object S extends App { (new J).foo = 5 } diff --git a/tests/pos-java-interop/t1231/J.java b/tests/pos-java-interop/t1231/J.java new file mode 100644 index 000000000..6b24205e5 --- /dev/null +++ b/tests/pos-java-interop/t1231/J.java @@ -0,0 +1 @@ +enum J { j1 } diff --git a/tests/pos-java-interop/t1231/S.scala b/tests/pos-java-interop/t1231/S.scala new file mode 100644 index 000000000..f14aa2561 --- /dev/null +++ b/tests/pos-java-interop/t1231/S.scala @@ -0,0 +1 @@ +object S extends App { println(J.j1) } diff --git a/tests/pos-java-interop/t1232/J.java b/tests/pos-java-interop/t1232/J.java new file mode 100644 index 000000000..2d9e3bbd5 --- /dev/null +++ b/tests/pos-java-interop/t1232/J.java @@ -0,0 +1,2 @@ +package j; +public class J { public enum E { e1 } } diff --git a/tests/pos-java-interop/t1232/J2.java b/tests/pos-java-interop/t1232/J2.java new file mode 100644 index 000000000..29237780a --- /dev/null +++ b/tests/pos-java-interop/t1232/J2.java @@ -0,0 +1,2 @@ +import s.S; +class J2 { } diff --git a/tests/pos-java-interop/t1232/S.scala b/tests/pos-java-interop/t1232/S.scala new file mode 100644 index 000000000..1b6bca732 --- /dev/null +++ b/tests/pos-java-interop/t1232/S.scala @@ -0,0 +1,2 @@ +package s +class S { j.J.E.e1 } diff --git a/tests/pos-java-interop/t1235/Test.java b/tests/pos-java-interop/t1235/Test.java new file mode 100644 index 000000000..7bb83a849 --- /dev/null +++ b/tests/pos-java-interop/t1235/Test.java @@ -0,0 +1,9 @@ +import scala.collection.immutable.HashMap; + +public class Test { + + void foo() { + new HashMap<String, String>(); + } +} + diff --git a/tests/pos-java-interop/t1254/t1254.java b/tests/pos-java-interop/t1254/t1254.java new file mode 100644 index 000000000..17e1c60bf --- /dev/null +++ b/tests/pos-java-interop/t1254/t1254.java @@ -0,0 +1,28 @@ +/* Taken from ticket #1254. Tests Java signatures in mirror classes and that + Nothing is translated to Nothing$. +*/ + +import scala.None; + +// This compiles with javac but fails with Eclipse java compiler: +// 'The type scala.Nothing cannot be resolved. It is indirectly referenced from required .class files' +class NothingBug3 { + public NothingBug3() { + scala.Option<?> o = scala.None$.MODULE$; + + test(o); + None.toLeft(new scala.runtime.AbstractFunction0<Integer>() { + public Integer apply() { return 0; } + }); + } + + public <T>void test(scala.Option<T> f) {} +} + +// This compiles with javac but fails with Eclipse java compiler: +// 'The type scala.Nothing cannot be resolved. It is indirectly referenced from required .class files' +class NothingBug4 { + public NothingBug4() { + scala.Option o = scala.None$.MODULE$; + } +} diff --git a/tests/pos-java-interop/t1409/AbstractImpl.java b/tests/pos-java-interop/t1409/AbstractImpl.java new file mode 100644 index 000000000..b22a94fa1 --- /dev/null +++ b/tests/pos-java-interop/t1409/AbstractImpl.java @@ -0,0 +1,3 @@ +public abstract class AbstractImpl implements OuterInterface { + public abstract InnerInterface create(); + } diff --git a/tests/pos-java-interop/t1409/ConcreteImpl.scala b/tests/pos-java-interop/t1409/ConcreteImpl.scala new file mode 100644 index 000000000..d427e957e --- /dev/null +++ b/tests/pos-java-interop/t1409/ConcreteImpl.scala @@ -0,0 +1,3 @@ +class ConcreteImpl extends AbstractImpl { + def create : OuterInterface.InnerInterface = null + } diff --git a/tests/pos-java-interop/t1409/OuterInterface.java b/tests/pos-java-interop/t1409/OuterInterface.java new file mode 100644 index 000000000..dd288ceea --- /dev/null +++ b/tests/pos-java-interop/t1409/OuterInterface.java @@ -0,0 +1,5 @@ +public interface OuterInterface { + public interface InnerInterface { + public void foo(); + } + } diff --git a/tests/pos-java-interop/t1642/JavaCallingScalaHashMap.java b/tests/pos-java-interop/t1642/JavaCallingScalaHashMap.java new file mode 100644 index 000000000..976e465ff --- /dev/null +++ b/tests/pos-java-interop/t1642/JavaCallingScalaHashMap.java @@ -0,0 +1,8 @@ +import scala.collection.immutable.HashMap; +import scala.collection.immutable.Map; + +public class JavaCallingScalaHashMap { + public static void main( String[] args ) { + Map<String, Integer> hashMap = new HashMap<String, Integer>(); + } +} diff --git a/tests/pos-java-interop/t1711/Seq.scala b/tests/pos-java-interop/t1711/Seq.scala new file mode 100644 index 000000000..c18f05cd7 --- /dev/null +++ b/tests/pos-java-interop/t1711/Seq.scala @@ -0,0 +1,12 @@ +package com + +object Sequence { + + def filteringFunction[V](filter: V => Boolean): List[V] => List[V] = { + def include(v: V) = + filter(v) + (l: List[V]) => l.filter(include) + } + +} + diff --git a/tests/pos-java-interop/t1711/Test.java b/tests/pos-java-interop/t1711/Test.java new file mode 100644 index 000000000..5ec0f2297 --- /dev/null +++ b/tests/pos-java-interop/t1711/Test.java @@ -0,0 +1,6 @@ +import com.Sequence; + +public class Test { + void foo() { + } +} diff --git a/tests/pos-java-interop/t1751/A1_2.scala b/tests/pos-java-interop/t1751/A1_2.scala new file mode 100644 index 000000000..354d5eecd --- /dev/null +++ b/tests/pos-java-interop/t1751/A1_2.scala @@ -0,0 +1,2 @@ +@SuiteClasses(Array(classOf[A2])) +class A1 diff --git a/tests/pos-java-interop/t1751/A2_1.scala b/tests/pos-java-interop/t1751/A2_1.scala new file mode 100644 index 000000000..c768062e4 --- /dev/null +++ b/tests/pos-java-interop/t1751/A2_1.scala @@ -0,0 +1,2 @@ +@SuiteClasses(Array()) +class A2 diff --git a/tests/pos-java-interop/t1751/SuiteClasses.java b/tests/pos-java-interop/t1751/SuiteClasses.java new file mode 100644 index 000000000..a415e4f57 --- /dev/null +++ b/tests/pos-java-interop/t1751/SuiteClasses.java @@ -0,0 +1,3 @@ +public @interface SuiteClasses { + public Class<?>[] value(); +} diff --git a/tests/pos-java-interop/t1782/Ann.java b/tests/pos-java-interop/t1782/Ann.java new file mode 100644 index 000000000..0dcfbd2ed --- /dev/null +++ b/tests/pos-java-interop/t1782/Ann.java @@ -0,0 +1,3 @@ +public @interface Ann { + public Days value(); +} diff --git a/tests/pos-java-interop/t1782/Days.java b/tests/pos-java-interop/t1782/Days.java new file mode 100644 index 000000000..203a87b1c --- /dev/null +++ b/tests/pos-java-interop/t1782/Days.java @@ -0,0 +1,3 @@ +public enum Days { + Friday, Sunday +} diff --git a/tests/pos-java-interop/t1782/ImplementedBy.java b/tests/pos-java-interop/t1782/ImplementedBy.java new file mode 100644 index 000000000..6aa8b4fa9 --- /dev/null +++ b/tests/pos-java-interop/t1782/ImplementedBy.java @@ -0,0 +1,3 @@ +public @interface ImplementedBy { + public Class<?> value(); +} diff --git a/tests/pos-java-interop/t1782/Test_1.scala b/tests/pos-java-interop/t1782/Test_1.scala new file mode 100644 index 000000000..47495c082 --- /dev/null +++ b/tests/pos-java-interop/t1782/Test_1.scala @@ -0,0 +1,16 @@ +@ImplementedBy(classOf[Provider]) +trait Service { + def someMethod(): Unit +} + +class Provider + extends Service +{ + // test enumeration java annotations + @Ann(Days.Friday) def someMethod() = () + + // #2103 + @scala.beans.BeanProperty + @Ann(value = Days.Sunday) + val t2103 = "test" +} diff --git a/tests/pos-java-interop/t1836/J.java b/tests/pos-java-interop/t1836/J.java new file mode 100644 index 000000000..a009a59e2 --- /dev/null +++ b/tests/pos-java-interop/t1836/J.java @@ -0,0 +1 @@ +public abstract class J<T> { protected J(T id) { } } diff --git a/tests/pos-java-interop/t1836/S.scala b/tests/pos-java-interop/t1836/S.scala new file mode 100644 index 000000000..88ce1063e --- /dev/null +++ b/tests/pos-java-interop/t1836/S.scala @@ -0,0 +1 @@ +class S extends J("") diff --git a/tests/pos-java-interop/t1840/J.java b/tests/pos-java-interop/t1840/J.java new file mode 100644 index 000000000..fd98b6c4a --- /dev/null +++ b/tests/pos-java-interop/t1840/J.java @@ -0,0 +1,4 @@ +package p; +class J { + J() {} +} diff --git a/tests/pos-java-interop/t1840/S.scala b/tests/pos-java-interop/t1840/S.scala new file mode 100644 index 000000000..ff513d2c1 --- /dev/null +++ b/tests/pos-java-interop/t1840/S.scala @@ -0,0 +1,2 @@ +package p +class S { new J } diff --git a/tests/pos-java-interop/t1937/NumberGenerator.java b/tests/pos-java-interop/t1937/NumberGenerator.java new file mode 100644 index 000000000..59d604733 --- /dev/null +++ b/tests/pos-java-interop/t1937/NumberGenerator.java @@ -0,0 +1,7 @@ +package br.com.caelum.caelumweb2.money; + +public class NumberGenerator { + public String generate() { + return null; + } +} diff --git a/tests/pos-java-interop/t2377/Q.java b/tests/pos-java-interop/t2377/Q.java new file mode 100644 index 000000000..e3d11c70e --- /dev/null +++ b/tests/pos-java-interop/t2377/Q.java @@ -0,0 +1,12 @@ +public final class Q { + public static final class Stage { + public static Builder newBuilder() { return new Builder(); } + public static final class Builder { } + public Builder toBuilder() { return newBuilder(); } + } + public static final class WorkUnit { + public static Builder newBuilder() { return new Builder(); } + public static final class Builder { } + public Builder toBuilder() { return newBuilder(); } + } +} diff --git a/tests/pos-java-interop/t2377/a.scala b/tests/pos-java-interop/t2377/a.scala new file mode 100644 index 000000000..bda59ce0d --- /dev/null +++ b/tests/pos-java-interop/t2377/a.scala @@ -0,0 +1,8 @@ +import Q._ + +class Bop(var workUnit: WorkUnit) { + def addStages(stageBuilder: Stage.Builder): Unit = { + val builder = workUnit.toBuilder + () + } +} diff --git a/tests/pos-java-interop/t2409/J.java b/tests/pos-java-interop/t2409/J.java new file mode 100644 index 000000000..6b7c45ff6 --- /dev/null +++ b/tests/pos-java-interop/t2409/J.java @@ -0,0 +1,4 @@ +class J { + static class J2 { } + J(J2 j2) { } +} diff --git a/tests/pos-java-interop/t2409/t2409.scala b/tests/pos-java-interop/t2409/t2409.scala new file mode 100644 index 000000000..0412f7d82 --- /dev/null +++ b/tests/pos-java-interop/t2409/t2409.scala @@ -0,0 +1 @@ +object S { new J(null) } diff --git a/tests/pos-java-interop/t2413/TestJava.java b/tests/pos-java-interop/t2413/TestJava.java new file mode 100644 index 000000000..252c01fbc --- /dev/null +++ b/tests/pos-java-interop/t2413/TestJava.java @@ -0,0 +1,7 @@ +package pack; + +public class TestJava { + protected String repeatParam(String ... items) { + return "nothing"; + } +} diff --git a/tests/pos-java-interop/t2413/TestScalac.scala b/tests/pos-java-interop/t2413/TestScalac.scala new file mode 100644 index 000000000..098e852dd --- /dev/null +++ b/tests/pos-java-interop/t2413/TestScalac.scala @@ -0,0 +1,23 @@ +import pack.TestJava + +class Foo extends TestJava { + + // THIS METHOD YIELDS TO CRASH +/* def foomethod : Option[String] => Unit = { + case None => + val path = repeatParam("s","a","b","c") + () + case Some(error) => + () + } + + // THIS IS OK + def foomethod2 : String = repeatParam("s","a"); + + // THIS IS OK + val aVal = repeatParam("1","2","3") */ + + // THIS YIELDS TO CRASH + for (a <- 1 to 4 ; anotherVal = repeatParam("1","2","3")) + yield anotherVal +} diff --git a/tests/pos-java-interop/t2433/A.java b/tests/pos-java-interop/t2433/A.java new file mode 100755 index 000000000..340690c40 --- /dev/null +++ b/tests/pos-java-interop/t2433/A.java @@ -0,0 +1,4 @@ +class A223 extends B223.Inner { + static class Inner {} + void foo() {} +}
\ No newline at end of file diff --git a/tests/pos-java-interop/t2433/B.java b/tests/pos-java-interop/t2433/B.java new file mode 100755 index 000000000..151dd71ca --- /dev/null +++ b/tests/pos-java-interop/t2433/B.java @@ -0,0 +1,4 @@ +class B223 { + static class Inner {} + void m(A223.Inner x) {} +}
\ No newline at end of file diff --git a/tests/pos-java-interop/t2433/Test.scala b/tests/pos-java-interop/t2433/Test.scala new file mode 100644 index 000000000..02fd89b64 --- /dev/null +++ b/tests/pos-java-interop/t2433/Test.scala @@ -0,0 +1,3 @@ +object Test { + (new A223).foo() +} diff --git a/tests/pos-java-interop/t2464/JavaOne.java b/tests/pos-java-interop/t2464/JavaOne.java new file mode 100644 index 000000000..ff36868a0 --- /dev/null +++ b/tests/pos-java-interop/t2464/JavaOne.java @@ -0,0 +1,5 @@ +class ClassTwo { + public static class Child { + public void func2() {return ;} + } +} diff --git a/tests/pos-java-interop/t2464/ScalaOne_1.scala b/tests/pos-java-interop/t2464/ScalaOne_1.scala new file mode 100644 index 000000000..1caf8ecae --- /dev/null +++ b/tests/pos-java-interop/t2464/ScalaOne_1.scala @@ -0,0 +1,6 @@ +class ScalaClassOne extends ClassTwo.Child { + def func4() = { + func2 + } +} + diff --git a/tests/pos-java-interop/t2464/t2464_2.scala b/tests/pos-java-interop/t2464/t2464_2.scala new file mode 100644 index 000000000..13a52c952 --- /dev/null +++ b/tests/pos-java-interop/t2464/t2464_2.scala @@ -0,0 +1,3 @@ +object Test { + val c1 = new ScalaClassOne +} diff --git a/tests/pos-java-interop/t2764/Ann.java b/tests/pos-java-interop/t2764/Ann.java new file mode 100644 index 000000000..184fc6e86 --- /dev/null +++ b/tests/pos-java-interop/t2764/Ann.java @@ -0,0 +1,5 @@ +package bippy; + +public @interface Ann { + Enum value(); +} diff --git a/tests/pos-java-interop/t2764/Enum.java b/tests/pos-java-interop/t2764/Enum.java new file mode 100644 index 000000000..fe0755953 --- /dev/null +++ b/tests/pos-java-interop/t2764/Enum.java @@ -0,0 +1,5 @@ +package bippy; + +public enum Enum { + VALUE; +} diff --git a/tests/pos-java-interop/t2764/Use.scala b/tests/pos-java-interop/t2764/Use.scala new file mode 100644 index 000000000..b0c108907 --- /dev/null +++ b/tests/pos-java-interop/t2764/Use.scala @@ -0,0 +1,6 @@ +package bippy + +class Use { + @Ann(Enum.VALUE) + def foo: Unit = {} +} diff --git a/tests/pos-java-interop/t294/Ann.java b/tests/pos-java-interop/t294/Ann.java new file mode 100644 index 000000000..934ca4629 --- /dev/null +++ b/tests/pos-java-interop/t294/Ann.java @@ -0,0 +1,3 @@ +public @interface Ann { + public Ann2[] nested(); +} diff --git a/tests/pos-java-interop/t294/Ann2.java b/tests/pos-java-interop/t294/Ann2.java new file mode 100644 index 000000000..025b79e79 --- /dev/null +++ b/tests/pos-java-interop/t294/Ann2.java @@ -0,0 +1,3 @@ +public @interface Ann2 { + public int value(); +} diff --git a/tests/pos-java-interop/t294/Test_1.scala b/tests/pos-java-interop/t294/Test_1.scala new file mode 100644 index 000000000..ff1f34b10 --- /dev/null +++ b/tests/pos-java-interop/t294/Test_1.scala @@ -0,0 +1,7 @@ +// also test pickling of java annotations; Test_2.scala will +// read this class file +@Ann(nested = Array(new Ann2(10))) class Test { + @Ann2(100) var ctx: Object = _ + @Ann(nested = Array()) def foo = 10 + @Ann(nested = Array(new Ann2(10), new Ann2(23))) val bam = -3 +} diff --git a/tests/pos-java-interop/t294/Test_2.scala b/tests/pos-java-interop/t294/Test_2.scala new file mode 100644 index 000000000..9fb1c6e17 --- /dev/null +++ b/tests/pos-java-interop/t294/Test_2.scala @@ -0,0 +1 @@ +class Test2 extends Test diff --git a/tests/pos-java-interop/t2940/Cycle.java b/tests/pos-java-interop/t2940/Cycle.java new file mode 100644 index 000000000..eef6c23b5 --- /dev/null +++ b/tests/pos-java-interop/t2940/Cycle.java @@ -0,0 +1,3 @@ +public interface Cycle<T extends Cycle<?>> { + void doStuff(); +}
\ No newline at end of file diff --git a/tests/pos-java-interop/t2940/Error.scala b/tests/pos-java-interop/t2940/Error.scala new file mode 100644 index 000000000..305d8aa4c --- /dev/null +++ b/tests/pos-java-interop/t2940/Error.scala @@ -0,0 +1,12 @@ +abstract class Error { + val c: Cycle[_] +} + +object Test { + trait Quux[T] extends Cycle[Quux[T]] + val x = new Quux[Int] { def doStuff(): Unit = { } } + + def main(args: Array[String]): Unit = { + + } +} diff --git a/tests/pos-java-interop/t2956/BeanDefinitionVisitor.java b/tests/pos-java-interop/t2956/BeanDefinitionVisitor.java new file mode 100644 index 000000000..2ff5daa25 --- /dev/null +++ b/tests/pos-java-interop/t2956/BeanDefinitionVisitor.java @@ -0,0 +1,6 @@ +import java.util.Map; +public class BeanDefinitionVisitor { + @SuppressWarnings("unchecked") + protected void visitMap(Map<?, ?> mapVal) { + } +} diff --git a/tests/pos-java-interop/t2956/t2956.scala b/tests/pos-java-interop/t2956/t2956.scala new file mode 100644 index 000000000..33803874b --- /dev/null +++ b/tests/pos-java-interop/t2956/t2956.scala @@ -0,0 +1,7 @@ +import scala.collection.JavaConversions._ + +class Outer { + protected class Inner extends BeanDefinitionVisitor { + protected def visitMap(mapVal: Map[_, _]): Unit = () + } +} diff --git a/tests/pos-java-interop/volatile/Foo.java b/tests/pos-java-interop/volatile/Foo.java new file mode 100644 index 000000000..c6a607b4d --- /dev/null +++ b/tests/pos-java-interop/volatile/Foo.java @@ -0,0 +1,3 @@ +public class Foo { + volatile int x = 1; +} |