我有一个带有以下代码的控制器......
def myController(Command command){
DomainObj obj = command.domain
if(obj.id) update(obj)
else createNew(obj)
....
}
现在我正在尝试创建我的测试但是当我做
时@Mock(DomainObj)
...
DomainObj obj = new DomainObj(id:123L)
但测试失败,因为未设置ID。我无法访问GORM项目,因此更改域类(I.E. hasId方法)不是一个可行的选择。有没有办法在单元测试中设置这个值?
答案 0 :(得分:2)
即使IDE仍然显示为空
,也不要小心obj.metaClass.id = 123
答案 1 :(得分:0)
您也可以直接在对象中设置id,如下所示:
@Mock(DomainObj)
...
DomainObj obj = new DomainObj(id:123L)
obj.id = 123