1 16 package org.apache.commons.chain.web.servlet; 17 18 19 import junit.framework.Test; 20 import junit.framework.TestCase; 21 import junit.framework.TestSuite; 22 import org.apache.commons.chain.Context; 23 24 import javax.servlet.ServletContext ; 25 import javax.servlet.http.HttpServletRequest ; 26 import javax.servlet.http.HttpServletResponse ; 27 import javax.servlet.http.HttpSession ; 28 import java.util.Locale ; 29 30 31 33 public class ServletSetLocaleCommandTestCase extends TestCase { 34 35 36 38 43 public ServletSetLocaleCommandTestCase(String name) { 44 super(name); 45 } 46 47 48 50 51 protected Locale locale = null; 52 53 protected ServletContext scontext = null; 55 protected HttpServletRequest request = null; 56 protected HttpServletResponse response = null; 57 protected HttpSession session = null; 58 59 protected Context context = null; 61 protected ServletGetLocaleCommand command = null; 62 63 64 66 67 70 public void setUp() { 71 72 locale = new Locale ("en", "US"); 73 74 scontext = new MockServletContext(); 76 session = new MockHttpSession(scontext); 77 request = new MockHttpServletRequest("/context", "/servlet", 78 "/path/info", "a=b&c=d", 79 session); 80 response = new MockHttpServletResponse(); 81 82 context = new ServletWebContext(scontext, request, response); 84 command = new ServletGetLocaleCommand(); 85 86 } 87 88 89 92 public static Test suite() { 93 94 return (new TestSuite(ServletGetLocaleCommandTestCase.class)); 95 96 } 97 98 99 102 public void tearDown() { 103 104 scontext = null; 105 session = null; 106 request = null; 107 response = null; 108 109 context = null; 110 command = null; 111 112 } 113 114 115 117 118 public void testConfigured() throws Exception { 120 121 command.setLocaleKey("special"); 122 assertEquals("special", command.getLocaleKey()); 123 check(context, command); 124 125 } 126 127 128 public void testDefaut() throws Exception { 130 131 assertEquals("locale", command.getLocaleKey()); 132 check(context, command); 133 134 } 135 136 137 139 140 protected void check(Context context, ServletGetLocaleCommand command) 141 throws Exception { 142 143 String localeKey = command.getLocaleKey(); 144 assertNotNull(localeKey); 145 Object value = context.get(localeKey); 146 assertNull(value); 147 context.put(localeKey, locale); 148 assertNotNull(context.get(localeKey)); 149 assertNull(response.getLocale()); 150 boolean result = command.execute(context); 151 assertFalse(result); 152 assertNotNull(response.getLocale()); 153 assertEquals(locale, response.getLocale()); 154 155 } 156 157 158 } 159 | Popular Tags |