在控制器单元测试中添加自定义TagLib方法。
|
我在自定义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\')}\"
没有找到相关结果
已邀请:
1 个回复
臀夯脖锑