在拦截器的before()
中,我正在基于actionName
进行特定的操作,但是从测试运行时,actionName
为null:
测试:
void "test"() {
when:
withRequest(controller: 'test1', action: 'test2')
then:
interceptor.doesMatch()
interceptor.before()
}
如何在测试中填充
actionName
?Grails 3.1.6
最佳答案
void "test"() {
when:
withRequest(controller: 'test1', action: 'test2')
request.setAttribute(GrailsApplicationAttributes.ACTION_NAME_ATTRIBUTE, 'test2')
then:
interceptor.doesMatch()
interceptor.before()
}
这对我有用,尽管我希望使用更自动的方式,但我希望
withRequest
方法可以做到这一点。