Scala 3
Java classes
Mocking of non-abstract java classes is not available without workaround.
public class JavaClass {
public int simpleMethod(String b) { return 4; }
}
val m = mock[JavaClass] // No longer compiles
class JavaClassExtended extends JavaClass
val mm = mock[JavaClassExtended] // should be used instead
Java generics without provided type params
You can’t stub such interfaces without workaround
public interface Foo {
void route(java.util.Map map);
}
trait ScalaFoo extends Foo {
override def route(map: java.util.Map[_, _]): Unit
}
val m = stub[ScalaFoo]