小编Gur*_*ali的帖子

Java junit测试更改Spring SimpleFormController中的Locale

对于SpringMVC,我有一个SimpleFormController,它有一个简单的方法,通过改变语言环境(i18n)来改变用户的语言.

    //localization
public void localize(HttpServletRequest request, HttpServletResponse response, String language) throws Exception {
    LocaleResolver localeResolver = RequestContextUtils.getLocaleResolver(request);                

    if (localeResolver != null) {
        LocaleEditor localeEditor = new LocaleEditor();
        localeEditor.setAsText(language);

        // set the new locale
        localeResolver.setLocale(request, response,
                (Locale) localeEditor.getValue());
    }
}
Run Code Online (Sandbox Code Playgroud)

使用该应用程序时代码工作正常.但是我想对这个方法进行Junit测试,以下是我到目前为止所提出的:

public class LoginPostControllerTest extends TestCase {
public void testLocalize() throws Exception {

    MockHttpServletRequest mockRequest = new MockHttpServletRequest();
    MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    Locale frenchLocale = Locale.CANADA_FRENCH;

    mockRequest.addPreferredLocale(frenchLocale);

    SessionLocaleResolver localeResolver = new SessionLocaleResolver();

    mockRequest.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, localeResolver);

    String language = …
Run Code Online (Sandbox Code Playgroud)

spring-mvc java-ee

5
推荐指数
1
解决办法
2825
查看次数

标签 统计

java-ee ×1

spring-mvc ×1