Я пишу модульный тест для некоторых простых методов.Проблема, с которой я столкнулся, заключается в том, что «save» не работает для моего объекта домена, даже если домен должен быть поддельным.При вызове validate для объекта домена он возвращается как true.Я даже окружил объект try / catch, чтобы убедиться, что он не выдает никаких странных ошибок, а это не так.Код ниже для вызова и проверки.
void test()
{
mockDomain(MyDomain)
Map map1= ["asdf":" "]
Map map2 = ["asdf":123]
InputObject input = new InputObject()
input.setForeignId("1") //not a constraint
input.setMap1(map1)
input.setMap2(map2 )
service.methodUnderTest(profile)
List list = MyDomain.getAll()
assertEquals 1, l.size() //FAILS
}
def persistPublishGuids(InputObject input)
{
try{
HashMap map1 = input.map1
for ( e in map1 )
{
String key= e.getKey()
String value = e.value
long size = input.map2.get(key)
MyDomain domain = new MyDomain (id:guid, field1:value, field2:input.foreignId, field3:size)
domain.save()
}
} catch(ex)
{
ex.printStackTrace()
}
}