Как смоделировать/заглушить локальную зависимость метода с помощью 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 library):

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.


person jmdev    schedule 15.03.2012    source источник


Ответы (1)


Я знаю, что это Scala, а не Java; но если вы посмотрите вики-статью Mockito по адресу http://code.google.com/p/mockito/wiki/MockingObjectCreation, там описано, как решить эту проблему в Java. Я предполагаю, что решение Scala будет во многом таким же.

person Dawood ibn Kareem    schedule 15.03.2012