groovy / grails / unit testing / createCriteria.get

Я могу имитировать звонки на:

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',id)
    eq('anotherParameter',anotherParameterId)
}

Этот подход не работает - может быть, потому, что 'get' является ключевым словом в отличие от 'list'. Кто-нибудь может посоветовать - возможность издеваться над этим в доменных классах должна быть возможна, без простого отказа от покрытия модульных тестов для методов, которые используют createCriteria (). Get {} .

Предложения приветствуются,

Alex

10
задан Rob Hruska 15 September 2010 в 19:39
поделиться