私たちのコードベースがまだ 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 で使用されていたようにインターセプターを通過しないため、「予期しないメソッド呼び出し」というエラーが呼び出されています。
インターセプターのテスト方法に変更はありましたか?
私は周りを検索しましたが、誰もこれに対する答えを持っていないようです。インターセプターのテストに関するドキュメントはまばらです。何か案は?