KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > javax > activation > MimeTypeParameterListTest


1 /**
2  *
3  * Copyright 2003-2004 The Apache Software Foundation
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 package javax.activation;
19
20 import java.util.Enumeration;
21
22 import junit.framework.TestCase;
23
24
25 /**
26  *
27  * @version $Rev: 123433 $ $Date: 2004-12-27 09:29:47 -0800 (Mon, 27 Dec 2004) $
28  */

29 public class MimeTypeParameterListTest extends TestCase {
30     private MimeTypeParameterList parameterList;
31
32     protected void setUp() throws Exception {
33         super.setUp();
34         parameterList = new MimeTypeParameterList();
35     }
36
37     public void testEmptyParameterList() {
38         assertEquals(0, parameterList.size());
39         assertTrue(parameterList.isEmpty());
40     }
41
42     public void testSimpleParameterList() throws MimeTypeParseException {
43         parameterList.parse(";name=value");
44         assertEquals(1, parameterList.size());
45         assertFalse(parameterList.isEmpty());
46         Enumeration e = parameterList.getNames();
47         assertTrue(e.hasMoreElements());
48         assertEquals("name", e.nextElement());
49         assertFalse(e.hasMoreElements());
50         assertEquals("value", parameterList.get("name"));
51     }
52
53     public void testQuotedValue() throws MimeTypeParseException {
54         parameterList.parse(";name=\"val()ue\"");
55         assertEquals(1, parameterList.size());
56         assertEquals("val()ue", parameterList.get("name"));
57     }
58
59     public void testWhiteSpacesParameterList() throws MimeTypeParseException {
60         parameterList.parse("; name= value");
61         assertEquals(1, parameterList.size());
62         assertEquals("name", parameterList.getNames().nextElement());
63         assertEquals("value", parameterList.get("name"));
64     }
65
66     public void testLongParameterList() throws MimeTypeParseException {
67         parameterList.parse(";name1=value1; name2 = value2; name3=value3;name4 = value4");
68         assertEquals(4, parameterList.size());
69         assertEquals("value1", parameterList.get("name1"));
70         assertEquals("value2", parameterList.get("name2"));
71         assertEquals("value3", parameterList.get("name3"));
72         assertEquals("value4", parameterList.get("name4"));
73     }
74
75     public void testCaseInsensitivity() throws MimeTypeParseException {
76         parameterList.parse(";name1=value; NAME2=VALUE; NaMe3=VaLuE");
77         assertEquals(3, parameterList.size());
78         assertEquals("value", parameterList.get("name1"));
79         assertEquals("VALUE", parameterList.get("name2"));
80         assertEquals("VaLuE", parameterList.get("name3"));
81         assertEquals("value", parameterList.get("NAME1"));
82         assertEquals("value", parameterList.get("NaMe1"));
83         parameterList.remove("NAME1");
84         assertNull(parameterList.get("name1"));
85         parameterList.remove("name3");
86         assertEquals("; name2=VALUE", parameterList.toString());
87     }
88
89     public void testNoValueParameterList() {
90         try {
91             parameterList.parse("; name=");
92             fail("Expected MimeTypeParseException");
93         } catch (MimeTypeParseException e) {
94             // ok
95
}
96     }
97
98     public void testMissingValueParameterList() {
99         try {
100             parameterList.parse("; name=;name2=value");
101             fail("Expected MimeTypeParseException");
102         } catch (MimeTypeParseException e) {
103             // ok
104
}
105     }
106
107     public void testNoNameParameterList() {
108         try {
109             parameterList.parse("; = value");
110             fail("Expected MimeTypeParseException");
111         } catch (MimeTypeParseException e) {
112             // ok
113
}
114     }
115
116     public void testUnterminatedQuotedString() {
117         try {
118             parameterList.parse("; = \"value");
119             fail("Expected MimeTypeParseException");
120         } catch (MimeTypeParseException e) {
121             // ok
122
}
123     }
124
125     public void testSpecialInAttribute() {
126         String specials = "()<>@,;:\\\"/[]?= \t";
127         for (int i=0; i < specials.length(); i++) {
128             try {
129                 parameterList.parse(";na"+specials.charAt(i)+"me=value");
130                 fail("Expected MimeTypeParseException for special: " + specials.charAt(i));
131             } catch (MimeTypeParseException e) {
132                 // ok
133
}
134         }
135     }
136 }
137
138
Popular Tags