このマッピングを考えると:
"/student/degree/$studentid/$degreecode"(controller:'student', action:'degree')
以下のテストを試していますが、どちらも失敗しAssertionFailedError: '...did not match any mapping'
、どちらも機能する有効な URL です。'/student/degree' だけのテスト URL で成功できますが、パラメーターが必要なので失敗すると思います。
assertURL
メソッドが複数のパラメーターを処理していないようです。これは「id」に対してのみ機能し、これらの URL に対してテストを作成することはできませんか?
@TestFor(UrlMappings)
@Mock([StudentController])
class UrlMappingsTests {
void testUrlMappings() {
assertForwardUrlMapping("/student/degree/102345678/N", controller: "student", action: "degree") {
assertForwardUrlMapping("/student/degree/102345678/N", controller: "student", action: "degree") {
studentid = 102345678
degreecode = "N"
}
}
}
}