После обновления до Grails 2.0.0 с 2.0.0.RC1 в моем контроллере наблюдается некоторое странное поведение при установке атрибута пользователя в сеансе.
Мой тест находится в процессе интеграции, и при запуске grails --integration test-app
или из IDE все тесты проходят, но при запуске grails test-app
с юнит-тестами вначале он не проходит.
Я просто устанавливаю пользователя в сеансе в своем действии UserController.login ():
session.user = user
Мой тест выглядит так:
params.userName = testUser1.userName // some user domain instance
params.password = testUser1.password
controller.doLogin()
assert null != session.user
При запуске grails test-app
в строке session.user=user
появляется следующая ошибка:
groovy.lang.MissingPropertyException: No such property: user for class: org.codehaus.groovy.grails.web.servlet.mvc.GrailsHttpSession
Possible solutions: new
Замена кода контроллера следующими работами:
session.setAttribute('user',user)
и тест с:
assert null != session.getAttribute('user')
Как уже упоминалось выше, это происходит только при запуске полного набора тестов. Если работает --integration
, это нормально. run-app
тоже нормально.
Ошибка?
Привет
Jonas