在 grails 运行应用程序休眠期间,事件会定期触发而不会出现问题。但是,在每个集成测试用例中,这些相同的事件不会触发。以下是将我的代码精简为最简单形式的精髓。甚至在集成测试期间使用休眠?是否有不同的测试方法可以应用?欢迎提出建议或意见。
集成测试
@Mock ([User])
class SomeIntegrationTests {
@Test
void testSomething () {
new User().save(flush: true)
}
}
控制器
class Controller implements SaveOrUpdateEventListener {
public void onSaveOrUpdate(SaveOrUpdateEvent event) throws HibernateException {
print 'event fired'
}
}
资源.groovy
beans = { service(MyService)
hibernateEventListeners(HibernateEventListeners) {
listenerMap=['save-update' : service, 'delete' : service]
}
}