Unit testing TagLib单元测试中的模拟UrlMapping

Unit testing TagLib单元测试中的模拟UrlMapping,unit-testing,grails,spock,Unit Testing,Grails,Spock,我使用的是Grails2.3.11,有一个定制的taglib AuditTagLib,它反过来调用createLink函数 现在我正在为AuditTagLib编写单元测试,但是很明显,createLink生成的url取决于UrlMapping中的条目 我认为单元测试并没有从conf中获取UrlMapping,而是使用了一些空/默认值,这从我的run应用程序的createLink中得到了一个不同的结果url 如何注入/设置模拟url映射,以便createLink呈现与我运行的grails应用程序中

我使用的是Grails2.3.11,有一个定制的taglib AuditTagLib,它反过来调用createLink函数

现在我正在为AuditTagLib编写单元测试,但是很明显,createLink生成的url取决于UrlMapping中的条目

我认为单元测试并没有从conf中获取UrlMapping,而是使用了一些空/默认值,这从我的run应用程序的createLink中得到了一个不同的结果url


如何注入/设置模拟url映射,以便createLink呈现与我运行的grails应用程序中相同的url?

可以通过添加到单元测试中来解决: grailsApplication.addArtefactUrlMappingsArtefactHandler.TYPE,新GroovyClassLoadergetClass.classLoader.parseClassnew文件Grails app/conf/UrlMappings.groovy

参考: