Я пытаюсь написать единичный тест для метода, который принимает параметр .class.Как издеваться над методом, который проходит в clazz?
Например:
ExampleService {
def myExample(clazz){
//do stuff and return some object
}
}
/* How the above function gets used */
AnotherExampleService extends exampleService {
def blah() {
def obj = myExample(AnotherClass.class)
}
}
/* Now I need to test the above blah() function */
AnotherExampleServiceSpec extends Specification {
def "test blah"() {
//The following doesn't seem to work
ExampleService.metaClass.myExample = { def arg1 -> obj }
}
}
Я довольно новыми для Groovy/Grails, поэтому любая помощь была бы оценена. Я в основном хочу знать, почему мой модульный тест, похоже, не работает, и как тестировать такую функцию, которая принимает параметр экземпляра класса.
Благодарим за помощь!
Спасибо за ответ. К сожалению, я допустил ошибку в своем исходном сообщении, где у меня был примерСервис в качестве поля в AnotherExampleService, вместо этого я расширил службу AnotherExampleService с помощью exanpleService. Как я могу это сделать? – waterbottle27
Пожалуйста, обновите вопрос, чтобы было ясно, в чем проблема. Ура! – defectus
Сделано! Мое первоначальное сообщение обновлено. – waterbottle27