KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > portal > test > portlet > ContentTypesTestCase


1 /*****************************************
2  * *
3  * JBoss Portal: The OpenSource Portal *
4  * *
5  * Distributable under LGPL license. *
6  * See terms of license at gnu.org. *
7  * *
8  *****************************************/

9 package org.jboss.portal.test.portlet;
10
11 import java.util.Arrays JavaDoc;
12 import java.util.HashSet JavaDoc;
13 import java.util.Set JavaDoc;
14
15 import org.jboss.portal.server.metadata.ContentTypeMetaData;
16 import org.jboss.portal.server.metadata.ContentTypesMetaData;
17 import org.jboss.portal.server.plugins.mode.ContentTypes;
18 import org.jboss.portal.server.plugins.mode.Mode;
19 import org.jboss.portal.test.AbstractTestCase;
20
21 /**
22  * @author <a HREF="mailto:julien@jboss.org">Julien Viet</a>
23  * @version $Revision: 1.2 $
24  */

25 public class ContentTypesTestCase extends AbstractTestCase
26 {
27    public ContentTypesTestCase(String JavaDoc name)
28    {
29       super(name);
30    }
31
32    public void testNormal()
33    {
34       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
35
36       ContentTypeMetaData textHTMLContentTypeMD = new ContentTypeMetaData();
37       textHTMLContentTypeMD.setContentType("text/html");
38       textHTMLContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.VIEW,Mode.EDIT})));
39       contentTypesMD.addContentType(textHTMLContentTypeMD);
40
41       ContentTypeMetaData textXMLContentTypeMD = new ContentTypeMetaData();
42       textXMLContentTypeMD.setContentType("text/xml");
43       textXMLContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[0])));
44       contentTypesMD.addContentType(textXMLContentTypeMD);
45
46       ContentTypes contentTypes = new ContentTypes();
47       contentTypes.setMetaData(contentTypesMD);
48
49       assertTrue(contentTypes.isSupported(Mode.EDIT, "text/html"));
50       assertFalse(contentTypes.isSupported(Mode.HELP, "text/html"));
51
52       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/xml"));
53       assertFalse(contentTypes.isSupported(Mode.EDIT, "text/xml"));
54       assertFalse(contentTypes.isSupported(Mode.HELP, "text/xml"));
55
56       assertFalse(contentTypes.isSupported(Mode.VIEW, "text/wml"));
57    }
58
59    public void testEmptyModes()
60    {
61       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
62
63       ContentTypeMetaData textHTMLContentTypeMD = new ContentTypeMetaData();
64       textHTMLContentTypeMD.setContentType("text/html");
65       textHTMLContentTypeMD.setModes(new HashSet JavaDoc());
66       contentTypesMD.addContentType(textHTMLContentTypeMD);
67
68       ContentTypes contentTypes = new ContentTypes();
69       contentTypes.setMetaData(contentTypesMD);
70
71       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
72    }
73
74    public void testSupportedModes()
75    {
76       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
77
78       Mode dummy = new Mode("dummy");
79
80       ContentTypeMetaData textHTMLContentTypeMD = new ContentTypeMetaData();
81       textHTMLContentTypeMD.setContentType("text/html");
82       textHTMLContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{dummy})));
83       contentTypesMD.addContentType(textHTMLContentTypeMD);
84
85       ContentTypeMetaData textContentTypeMD = new ContentTypeMetaData();
86       textContentTypeMD.setContentType("text/*");
87       textContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT})));
88       contentTypesMD.addContentType(textContentTypeMD);
89
90       ContentTypeMetaData wilcardContentTypeMD = new ContentTypeMetaData();
91       wilcardContentTypeMD.setContentType("*");
92       wilcardContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.HELP})));
93       contentTypesMD.addContentType(wilcardContentTypeMD);
94
95       ContentTypes contentTypes = new ContentTypes();
96       contentTypes.setMetaData(contentTypesMD);
97       Set JavaDoc textHTMLModes = contentTypes.getSupportedModes("text/html");
98       assertEquals(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT,Mode.HELP,Mode.VIEW,dummy})), textHTMLModes);
99       Set JavaDoc textXMLModes = contentTypes.getSupportedModes("text/xml");
100       assertEquals(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT,Mode.HELP,Mode.VIEW})), textXMLModes);
101       Set JavaDoc imageGifModes = contentTypes.getSupportedModes("image/gif");
102       assertEquals(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.HELP,Mode.VIEW})), imageGifModes);
103    }
104
105    public void testCase1()
106    {
107       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
108
109       ContentTypeMetaData textHTMLContentTypeMD = new ContentTypeMetaData();
110       textHTMLContentTypeMD.setContentType("text/html");
111       textHTMLContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[0])));
112       contentTypesMD.addContentType(textHTMLContentTypeMD);
113
114       ContentTypes contentTypes = new ContentTypes();
115       contentTypes.setMetaData(contentTypesMD);
116
117       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
118       assertTrue(contentTypes.isSupported(Mode.VIEW, "TEXT/html"));
119       assertTrue(contentTypes.isSupported(Mode.VIEW, "TExt/html"));
120       assertTrue(contentTypes.isSupported(Mode.VIEW, "teXT/html"));
121    }
122
123    public void testCase2()
124    {
125       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
126
127       ContentTypeMetaData textHTMLContentTypeMD = new ContentTypeMetaData();
128       textHTMLContentTypeMD.setContentType("text/*");
129       textHTMLContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[0])));
130       contentTypesMD.addContentType(textHTMLContentTypeMD);
131
132       ContentTypes contentTypes = new ContentTypes();
133       contentTypes.setMetaData(contentTypesMD);
134
135       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
136       assertTrue(contentTypes.isSupported(Mode.VIEW, "TEXT/html"));
137       assertTrue(contentTypes.isSupported(Mode.VIEW, "TExt/html"));
138       assertTrue(contentTypes.isSupported(Mode.VIEW, "teXT/html"));
139       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/xml"));
140       assertTrue(contentTypes.isSupported(Mode.VIEW, "TEXT/xml"));
141       assertTrue(contentTypes.isSupported(Mode.VIEW, "TExt/xml"));
142       assertTrue(contentTypes.isSupported(Mode.VIEW, "teXT/xml"));
143    }
144
145    public void testWildcard1()
146    {
147       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
148       ContentTypeMetaData wildcardContentTypeMD = new ContentTypeMetaData();
149       wildcardContentTypeMD.setContentType("*/*");
150       wildcardContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT})));
151       contentTypesMD.addContentType(wildcardContentTypeMD);
152
153       ContentTypes contentTypes = new ContentTypes();
154       contentTypes.setMetaData(contentTypesMD);
155
156       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
157       assertTrue(contentTypes.isSupported(Mode.EDIT, "text/html"));
158    }
159
160    public void testWildcard2()
161    {
162       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
163       ContentTypeMetaData wildcardContentTypeMD = new ContentTypeMetaData();
164       wildcardContentTypeMD.setContentType("*");
165       wildcardContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT})));
166       contentTypesMD.addContentType(wildcardContentTypeMD);
167
168       ContentTypes contentTypes = new ContentTypes();
169       contentTypes.setMetaData(contentTypesMD);
170
171       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
172       assertTrue(contentTypes.isSupported(Mode.EDIT, "text/html"));
173    }
174
175    public void testWildcard3()
176    {
177       ContentTypesMetaData contentTypesMD = new ContentTypesMetaData();
178       ContentTypeMetaData wildcardContentTypeMD = new ContentTypeMetaData();
179       wildcardContentTypeMD.setContentType("text/*");
180       wildcardContentTypeMD.setModes(new HashSet JavaDoc(Arrays.asList(new Object JavaDoc[]{Mode.EDIT})));
181       contentTypesMD.addContentType(wildcardContentTypeMD);
182
183       ContentTypes contentTypes = new ContentTypes();
184       contentTypes.setMetaData(contentTypesMD);
185
186       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/html"));
187       assertTrue(contentTypes.isSupported(Mode.EDIT, "text/html"));
188       assertTrue(contentTypes.isSupported(Mode.VIEW, "text/xml"));
189       assertTrue(contentTypes.isSupported(Mode.EDIT, "text/xml"));
190    }
191 }
192
Popular Tags