我正在尝试通过grails控制器的集成测试来测试国际化。 控制器启用REST并返回JSON响应。
为了测试国际化,可以简单地在URL中提供?lang = es,并且相应的消息包在内部由grails使用。
我在一个支持项目中,国际化已经按照预期的方式运作。当我提出卷曲请求时,我会收到正确语言的回复。
集成测试仅用于验证不同语言的特定响应。
我不确定如何通过集成测试请求任何语言。
我试过了:
我从http://grails.org/doc/latest/guide/i18n.html#changingLocales找不到多少帮助。并且其他问题都没有,但相关文章可能是How to unit or integration test use of injected messageSource for i18n in Grails 2.0 service
答案 0 :(得分:0)
集成测试使用具有方法GrailsMockHttpServletRequest
的{{1}}类来更改当前测试请求的区域设置。
通常我们会通过addPreferredLocale(Locale)
获取请求:
RequestContextHolder