mockDomain为域类提供了save()
,validate()
,...等动态方法。
是否有必要使用mockDomain
?
class UserTests extends GrailsUnitTestCase {
protected void setUp()
{
super.setUp()
mockDomain User
mockDomain Address
}
protected void tearDown()
{
super.tearDown()
def remove = GroovySystem.metaClassRegistry.&removeMetaClass
remove User
remove Address
}
}
答案 0 :(得分:3)
你不需要这样做。 mockDomain方法调用registerMetaClass
,它会隐藏当前的metaClass并替换一个新的metaClass,因此在tearDown上,测试可以为您恢复旧的metaClass。当你确实需要自己向metaClass添加方法时,可以调用registerMetaClass(当然是在添加更改之前),一旦完成,测试就会进行清理。
答案 1 :(得分:0)
不。出于好奇,会让您相信自己需要做什么?