MyDomainClass.createCriteria().List{ eq('ID',ID) eq('anotherParameter',anotherParameterID)}
有:
def myCriteria = [ List : {Closure cls -> returnThisObject}]MyDomainClass.MetaClass.static.createCriteria = { myCriteria }
按照建议:
http://davistechyinfo.blogspot.com/2010/01/mocking-hibernate-criteria-in-grails.html
但对于:
MyDomainClass.createCriteria().get{ eq('ID',anotherParameterID)}
这种方法失败 – 也许是因为’get’是一个关键字的方式’List’不是.任何人都可以建议 – 可以在领域类中模拟这一点,而不用简单地放弃使用createCriteria().get {}的方法的单元测试覆盖.
建议非常感谢,
亚历克斯
解决方法 我发现一个解决方案不会损害我写单元测试的能力 –def myCriteria = new Expando();myCriteria .get = {Closure cls -> returnThisObject} MyDomainClass.MetaClass.static.createCriteria = {myCriteria }
这正是我想要的,并且可能支持测试提供的参数.感谢您的回应.希望这对其他测试域/ createCriteria()方法有用.
@H_419_0@ 总结以上是内存溢出为你收集整理的groovy / grails / unit tests / createCriteria.get全部内容,希望文章能够帮你解决groovy / grails / unit tests / createCriteria.get所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)