Add user-friendly explanation for server timeout.
[frank.git] / test / net / jaekl / frank / ErrorHandlerTest.java
index 4db0602c8cf428aa4deb7bef90f500ba4fc2da57..235d04fb3277b1984b9bc16c8efcee16340265d2 100644 (file)
@@ -3,6 +3,7 @@ package net.jaekl.frank;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
+import java.net.SocketTimeoutException;
 import java.sql.SQLException;
 import java.util.Locale;
 
@@ -56,20 +57,29 @@ public class ErrorHandlerTest {
        }
        
        @Test
-       public void testExplain_unexpectedException() {
+       public void testExplain_simpleExceptions() {
                Locale[] locales = { Locale.CANADA, Locale.FRANCE, Locale.JAPAN, Locale.CHINA};
+               Object[][] data = { 
+                               {new NullPointerException(), FrankBundle.UNEXPECTED_EXCEPTION},
+                               {new SocketTimeoutException(), FrankBundle.SERVER_TIMEOUT}
+                       };
                
                ErrorHandler eh = new ErrorHandler();
                
                for (Locale locale : locales) {
                        FrankBundle bundle = FrankBundle.getInst(locale);
                        
-                       m_baos.reset();
-                       eh.writeErrorPage(m_pw, new NullPointerException(),  Locale.CANADA);
-                       m_pw.flush();
-                       
-                       String actual = m_baos.toString();
-                       Assert.assertTrue(actual.contains(bundle.get(FrankBundle.UNEXPECTED_EXCEPTION)));
+                       for (Object[] tuple : data) {
+                               Exception e = (Exception)tuple[0];
+                               String key = (String)tuple[1];
+                               
+                               m_baos.reset();
+                               eh.writeErrorPage(m_pw, e, locale);
+                               m_pw.flush();
+                               
+                               String actual = m_baos.toString();
+                               Assert.assertTrue(actual.contains(bundle.get(key)));
+                       }
                }
        }