0

私は次のコードを持っています:

void testConfirmBookNotFound() {

    def book = new Book(id: 1, title: 'test book')
    mockDomain(Book, [book])
    mockDomain(BookProject, [new BookProject(id: 1, book: book)])

    def controller = new CancelController()
    controller.params.id = 5140
    controller.confirm()

    assertEquals "/admin/cancel/index", controller.response.redirectedUrl
}

私のテストクラスが拡張する場合、ControllerUnitTestCaseそれcontroller.response.redirectedUrlは常にnullです。ただし、テストクラスが拡張されている場合GrailsUnitTestCase(これはnull urlの問題の修正です)、を取得しNo such property: paramsます。このテストを機能させるには何をする必要がありますか?

4

1 に答える 1

2

のように使用controller.redirectArgs.actionしてみてください...

assertThat(controller.redirectArgs.action, equalTo("index"))
于 2012-05-29T19:26:33.983 に答える