我的控制器中有一个方法,我想使用 Spec2 进行单元测试。
object MyController extends Controller with MyAuth {
def article(id: String) = {
authenticate {
......
}
}
}
authenticate
中定义MyAuth
。此函数获取令牌(如果可用)或进行身份验证并获取令牌。我想authenticate
在单元测试时进行模拟article
。我不确定如何进行此操作。任何指针都会有所帮助。
更新:到目前为止我的方法。 我看到了这个问题并覆盖了 MyAuth 特征中的身份验证方法。
trait MyAuthMock {
this: MyAuth =>
override def authenticate ....
}
我也改为MyController
拥有类和伴随对象。然后在我的测试中,我使用控制器如下
new MyController with MyAuthMock