В моем приложении grails, в контроллере, я использую следующие вещи:
class SampleController {
def action1 = {
def abc = grailsApplication.getMetadata().get("xyz")
render abc.toString()
}
}
При запуске приложение правильно считывает свойство «xyz» из application.properties и работает нормально. Но когда я пишу пример модульного теста для вышеуказанного контроллера, как показано ниже:
class SampleControllerTests extends ControllerUnitTestCase {
SampleController controller
protected void setUp() {
super.setUp()
controller = new SampleController()
mockController(SampleController)
mockLogging(SampleController)
}
void testAction1() {
controller.action1()
assertEquals "abc", controller.response.contentAsString
}
}
Но когда я выполняю «grails test-app», я ожидаю, что оно возьмет свойство «xyz» из application.properties и вернется, как ожидалось. Но выдает ошибку «Нет такого свойства: grailsApplication».
Я понимаю, я думаю, мне нужно издеваться над объектом grailsApplication
, и я также пробовал многие варианты, но все они не сработали.
Я новичок в Grails.