他のコントローラーにミックスする BaseController を作成しました。
例:
class BaseController () {
def somemethod () {
return "some method"
}
}
@Mixin(BaseController)
class MyController {
def getsomething() {
def test = somemethod()
return test
}
}
のテスト ケースを作成しようとしてMyController
いますが、 が見つからないため失敗しますsomemethod
。
私のテストは現在このようになっています
@TestFor(MyController)
class MyControllerSpec extends Specification {
def "test getsomething" () {
when:
def m = controller.getsomething()
then:
response.contentAsString == "some method"
}
}
しかし、次のようなエラーが発生し続けます。
No signature of method: somemethod() is applicable for argument types: () values: []
質問
MyController
スポックテストを書いて、それも見つけsomemethod
られるようにするにはどうすればよいですか