【发布时间】:2013-10-08 10:33:54
【问题描述】:
我正在尝试使用继承只读 id 的 Spock 测试一个对象,但为了进行测试,我需要设置一个值。我已经用 hasProperty 验证了该属性在运行时存在。我试过的是这样的:
def au = Mock(AisUser)
au.id >> 2L
我不能用 metaClass 来做,因为它是一个模拟。有没有其他方法可以动态覆盖该属性?也许将其从对象中删除,然后动态重新插入?
【问题讨论】:
-
编辑:def au = Mock(AisUser); au.id >> 2L;
-
id属性是在AisUser类中声明的,还是动态属性? -
是AisUser继承的属性。