调用mock
因此播放框架讨论了具有specs2和specs2的mockito
我想使用mockito编写一个测试,其中控制器调用的模板是mockito mock。
到目前为止,我发现的所有文档都是java实现,在这些实现中,您可以调用mock静态函数,并将Mocked类作为泛型参数。
根据我所知,mock函数默认情况下不会在规范中公开,那么我该如何创建mockito mock呢?
请给出一个示例,其中包括创建mock和断言mock。使用某些参数
经过大量的谷歌搜索和头发拉扯,我想出了以下
package test
import org.specs2.mutable._
import play.api.test._
import play.api.test.Helpers._
import org.specs2.mock._
import org.mockito.Matchers
class ToTest {
def go(a:String) = {
"other"
}
}
class MockSpec extends Specification with Mockito {
"Mock" should {
"work" in {
//assemble
val m = mock[ToTest]
m.go(anyString) returns "tested"
//act
val result = m.go("test")
//assert
result must equalTo("tested")
there was one(m).go(Matchers.eq("test"))
}
}
}