В моем интеграционном тесте я делаю следующее:Как я могу проверить, хранимые данные внутри интеграционного теста
void testSave() {
def controller = new BookController()
controller.params.title = "Awesome Book"
controller.params.pages = 1000
controller.save()
// i want to check book data here
}
Как я могу извлечь Book
мой контроллер сохранялся и убедитесь, что title == "Awesome Book"
и pages == 1000
? Могу ли я каким-либо образом получить доступ к переменной bookInstance
в моем контроллере из теста?
Я не могу предположить, что Book.get(1)
даст мне правильный Book
, потому что в базе данных будут загрузочные данные. Контроллер перенаправляет на полностью связанную страницу Book
, поэтому я не могу получить id
из URL-адреса. Единственное, что я могу думать о том, чтобы сделать что-то вроде этого:
void testSave() {
def oldIdList = Book.list()*.id
// set up the parameters and call controller.save()
def insertedId = Book.list()*.id - oldIdList
// check Book.get(insertedId) properties
}
, но я надеюсь, что есть лучший путь ...
Динамические искатели не являются 2.0-специфическими –