1

我正在尝试测试一个名为 EnityContact 的域类。在该类中有一个名为 initialize 的方法,它在需要时填充一些字段。为了做到这一点,该方法创建了一些其他域类的实例:AisUser、Entity 和 CPerson。AisUser 是调用 SecurityUtil.retrieveCurrentAisUser(false) 返回的域类。

class EntityContact extends BaseObject implements Initializable{

    ....

    @Override
    void initialize() {
        println "initaliazing"
        isMain = false
        creationDate = new Date()
        createdBy = CPerson.get(SecurityUtil.retrieveCurrentAisUser(false).id)
        entity = new Entity()
        entity.setId(Long.valueOf(0)) //Id has to be initialized with some value
    }
}

我想做的是找到一种方法来返回我在规范中定义的那些类的模拟。

有任何想法吗?

4

1 回答 1

2

In Groovy you can mock static methods using MetaClass.

SecurityUtil.metaClass.'static'.retrieveCurrentAisUser = { boolean param ->
}
于 2013-10-07T19:38:55.807 回答