2013-03-20 101 views
2

我正在使用grails版本1.3.7。在我的控制器应用程序,我正在使用的messages.properties和获取财产的价值如何在为grails控制器编写单元测试时模拟g.message

g.message(code:messageKey, args:msgParamsArr) 

但是,当我开始在控制器的动作编写单元测试,它给了我的错误。

请你帮我解释一下如何正确模拟g.message,以便现有的代码只能从messages.properties中获取消息属性。

+3

你得到什么错误?请提供更多信息。 – 2013-03-20 12:33:39

回答

2

你可以嘲笑它:

controller.metaClass.message = { message -> 
    message.code 
} 

可以包括message.args太多,如果你只想验证论点.contains()

+0

就在这里说一下,在grails 2.4.3中,它看起来不像metaClass下的消息对象。这个解决方案在2.4.3中似乎不起作用。 – 2015-08-11 13:04:06

-1

这就像一个冠军在Grails的2.4.5:

controller.metaClass.message = { Map attrs -> attrs.toString() } 
相关问题