5
有沒有辦法測試在集成測試中使用過濾器的控制器?Grails集成測試過濾器
似乎有使用@Mock註釋的單元測試和比包裝上withFilter閉合,控制器調用的方法。
但我不能去上一個集成測試,從我的POV應該是很簡單的測試過濾器。
更新
因此,這裏是我找到了解決辦法。我沒有使用@Mock註釋,而是實例化了FiltersUnitTestMixin類並用必要的值填充它。
public class ControllerTest {
def controller = new Controller()
FiltersUnitTestMixin f = new FiltersUnitTestMixin()
@Before
public void setup() {
f.grailsApplication = grailsApplication
f.applicationContext = grailsApplication.mainContext
f.mockFilters(ControllerFilters)
}
@Test
public void shouldPassTheTest() {
f.withFilters(action:"actionName") {
controller.actionName()
}
}
}