0
我想使用assert Equals來檢查我的用戶控制器在一個動作之後重定向到的Url。我的測試一直失敗,出現此錯誤:整合測試redirectedURL整個路徑?
junit.framework.ComparisonFailure: expected:</todo[]> but was:</todo[/index]>
我只想檢查我的功能是否重定向到/ login/path中的任何URL。 這裏是我的集成測試代碼:
import grails.test.mixin.*
import org.junit.*
/**
* See the API for {@link grails.test.mixin.web.ControllerUnitTestMixin} for usage instructions
*/
@TestFor(UserController)
class UserControllerTests extends GroovyTestCase {
User user
UserController uc
void setUp() {
//Save a User
user = new User(userName: "User1", firstName: "User1FN", lastName: "User1LN")
user.save()
//Set up UserController
uc = new UserController()
}
void tearDown() {
user.delete()
}
testHandleLogin(){
//Setup controller paramaters
uc.params.userName = user.userName
//Call the action
uc.handleLogin()
//if the action functioned correctly, it put a user object into the session
def sessUser = uc.session.user
assert sessUser
assertEquals("Expected ids to match", user.id, sessUser.id)
//And the user was redirected to the Todo Page
assertEquals "/login", uc.response.redirectedUrl
}
反正是有使用正則表達式,或者檢查「/登錄/(其他東西)」的方法?
謝謝!
這工作,謝謝!不知道爲什麼我沒有想到這一點。 – AnthonyM