将地图投射到grails.gorm.CriteriaBuilder时出错

时间:2015-06-24 20:50:10

标签: grails mocking

有人可以告诉我为什么我无法在测试中模拟CriteriBuilder。执行criteriaBuilderMock.createMock()时,我收到错误,将地图投射到grails.gorm.CriteriaBuilder,原因:null

是否可以模拟CriteriaBuilder?我是否收到此错误,因为grails不允许在没有默认构造函数的情况下模拟对象?有工作吗?

@TestFor(ProductService)
class ProductServiceSpec extends Specification {

    void "test exists"() {
        given:
        def criteriaBuilderMock = mockFor(CriteriaBuilder);
        criteriaBuilderMock.createMock(); //<-- error org.codehaus.groovy.runtime.typehandling.GroovyCastException: Error casting map to grails.gorm.CriteriaBuilder, Reason: null
    }
}

感谢

1 个答案:

答案 0 :(得分:0)

模拟类必须有一个no-args构造函数。