У меня есть метод в пользовательском taglib, например:
def deleteAction = {attrs ->
def id = attrs['id']
def type = attrs['type']
def clazz = attrs['class']
def html = new MarkupBuilder(out)
html.span(class: "${clazz} ui-icon ui-icon-trash {id:'${id}'}")
}
У меня есть контроллер, который использует этот метод, и я пытаюсь заглушить его для модульного теста, поэтому у меня есть следующее:
def mockMyTagLib = mockFor(MyTagLib)
mockMyTagLib.demand.deleteAction(1) {id, type, clazz ->
def html = new MarkupBuilder(new StringWriter())
html.span(class: "${clazz} ui-icon ui-icon-trash {id:'${id}'}")
}
controller.metaClass.mn = mockMyTagLib.createMock()
Но я продолжаю получать следующее:
Больше нет звонков на «deleteAction»
ожидается в этот момент. Конец чего-либо
требования.
Я что-то здесь не так делаю? Вот его фактическое использование в контроллере:
"${mn.deleteAction(id: it.id, type: 'bookProduct', 'class': 'del-book-product')}"