2017-06-20 2 views
1

In einem Interceptor der before() die action verfügbar machen, aber wenn aus dem Test lief die actionName ist null:Wie für einen Komponententest

Test:

void "test"() { 
    when: 
     withRequest(controller: 'test1', action: 'test2') 

    then: 
     interceptor.doesMatch() 
     interceptor.before() 
} 

Wie beziehe ich die actionName im Test?

Grails 3.1.6

Antwort

0
void "test"() { 
    when: 
     withRequest(controller: 'test1', action: 'test2') 
     request.setAttribute(GrailsApplicationAttributes.ACTION_NAME_ATTRIBUTE, 'test2') 

    then: 
     interceptor.doesMatch() 
     interceptor.before() 
} 

Dies funktioniert für mich, obwohl ich eine automatische Art und Weise bevorzugen würde, erwartete ich die withRequest Methode, dies zu tun.

Verwandte Themen