1   package com.imcode.util;
2   
3   import junit.framework.*;
4   import com.imcode.util.MultipartHttpServletRequest;
5   
6   public class MultipartHttpServletRequestTest extends TestCase {
7   
8       public void testGetCharsetFromContentType() throws Exception {
9           assertEquals(MultipartHttpServletRequest.CHARSET_ISO_8859_1, MultipartHttpServletRequest.getCharsetFromContentType(null)) ;
10          assertEquals(MultipartHttpServletRequest.CHARSET_ISO_8859_1, MultipartHttpServletRequest.getCharsetFromContentType("text/plain")) ;
11          assertEquals("iso-8859-1", MultipartHttpServletRequest.getCharsetFromContentType("text/plain; charset=\"iso-8859-1\"")) ;
12          assertEquals("iso-8859-1", MultipartHttpServletRequest.getCharsetFromContentType("text/plain; charset=iso-8859-1")) ;
13          assertEquals("iso-8859-1", MultipartHttpServletRequest.getCharsetFromContentType("text/plain; charset=\"iso-8859-1\"; foo=\"bar\"")) ;
14          assertEquals("iso-8859-1", MultipartHttpServletRequest.getCharsetFromContentType("text/plain; charset=iso-8859-1; foo=bar")) ;
15      }
16  
17      public void testGetStringFromBytesWithContentType() throws Exception {
18          assertEquals("A", MultipartHttpServletRequest.getStringFromBytesWithContentType(new byte[] {65}, null)) ;
19          assertEquals("A", MultipartHttpServletRequest.getStringFromBytesWithContentType(new byte[] {65}, "text/plain")) ;
20          assertEquals("A", MultipartHttpServletRequest.getStringFromBytesWithContentType(new byte[] {65}, "text/plain; charset=\"foo\"")) ;
21          assertEquals("\u00f6", MultipartHttpServletRequest.getStringFromBytesWithContentType(new byte[] {(byte)0xf6}, "text/plain")) ;
22          assertEquals("\u00f6", MultipartHttpServletRequest.getStringFromBytesWithContentType(new byte[] {(byte)0xc3, (byte)0xb6}, "text/plain; charset=\"utf-8\"")) ;
23      }
24  }