Когда наша кодовая база все еще находилась в Grails 2.1.4, этот модульный тест для наших перехватчиков работал с полным охватом:
@Before
void setUp() {
gmc = new GMockController()
apiProducts = gmc.mock()
api.products.returns(apiProducts).stub()
controller.api = api
}
void testBeforeInterceptor() {
// Arrange
setUp()
def ctrl = gmc.mock(controller)
params.id = 1
ctrl.actionName.returns('view')
apiProducts.get(params.id)
// Act
gmc.play {
controller.beforeInterceptor()
}
}
После перехода на Grails 2.2.2 кажется, что это не покрывает тест, как это было в версии 2.1.4. Ошибка «Неожиданный вызов метода» вызывается, так как он не проходит через перехватчики, как это было в 2.1.4.
Были ли изменения в том, как тестируются перехватчики?
Я искал вокруг, и кажется, что ни у кого нет ответа на этот вопрос. Документация по тестированию перехватчиков скудна. Любые идеи?