Как смоделировать / заглушить локальную зависимость метода с Mockito?
Допустим, у меня есть это:
class Dependency1 {
def methodD1 { }
}
class Dependency2 {
val dependency1 = new Dependency1
}
def myMethod() {
val a = new Dependency1
// I want to be able to stub this
val b = a.dependency1.methodD1()
...
}
Я хочу сделать что-то вроде в RR (библиотека ruby mock):
any_instance_of(Dependency1) do | obj |
stub(obj) { "123" } # this would be like stub(obj) toReturn("123") with Mockito in Scala
end
Я знаю, что в Mockito есть какой-то метод, но он совпадает. Я ищу что-то вроде:
stub(anyInstanceOf(Dependency1).methodD1) toReturn("123")
Есть ли способ смоделировать / заглушить локальную зависимость с помощью Mockito/EasyMock/PowerMock/JMock?
Я использую ScalaTest с MockitoSugar.
1 ответ
Решение
Я знаю, что это Скала, а не Ява; но если вы загляните в вики-статью Mockito по адресу http://code.google.com/p/mockito/wiki/MockingObjectCreation, она описывает, как решить эту проблему на Java. Я думаю, что решение Scala будет во многом таким же.