groovygrailsunit testscreateCriteria.get

groovygrailsunit testscreateCriteria.get,第1张

概述我可以嘲笑电话: MyDomainClass.createCriteria().list{ eq('id',id) eq('anotherParameter',anotherParameterId)} 有: def myCriteria = [ list : {Closure cls -> returnThisObject}]MyDomainClass.metaCl @H_419_0@ @H_419_0@ 我可以嘲笑电话:

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所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1234989.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存