KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > sapia > ubik > net > mplex > HttpStreamSelectorTest


1 package org.sapia.ubik.net.mplex;
2
3 import junit.framework.TestCase;
4
5 import java.io.UnsupportedEncodingException JavaDoc;
6
7
8 /**
9  * Class documentation
10  *
11  * @author <a HREF="mailto:jc@sapia-oss.org">Jean-Cedric Desrochers</a>
12  * <dl>
13  * <dt><b>Copyright:</b><dd>Copyright &#169; 2002-2004 <a HREF="http://www.sapia-oss.org">
14  * Sapia Open Source Software</a>. All Rights Reserved.</dd></dt>
15  * <dt><b>License:</b><dd>Read the license.txt file of the jar or visit the
16  * <a HREF="http://www.sapia-oss.org/license.html" target="sapia-license">license page</a>
17  * at the Sapia OSS web site</dd></dt>
18  * </dl>
19  */

20 public class HttpStreamSelectorTest extends TestCase {
21   private static final byte[] ubikHeader;
22   private static final byte[] simpleHttpHeader;
23   private static final byte[] complexHttpHeader;
24
25   static {
26     byte[] data1 = new byte[0];
27     byte[] data2 = new byte[0];
28     byte[] data3 = new byte[0];
29
30     try {
31       data1 = "UBIK!#@/$abcdefg".getBytes("UTF-8");
32       data2 = "POST / HTTP/1.1\nHost: localhost\n".getBytes("UTF-8");
33       data3 = "GET /server/mplex/test?param1=value1&param2=value2 HTTP/1.1\nHost: localhost\n".getBytes(
34           "UTF-8");
35     } catch (UnsupportedEncodingException JavaDoc e) {
36       e.printStackTrace();
37     } finally {
38       ubikHeader = data1;
39       simpleHttpHeader = data2;
40       complexHttpHeader = data3;
41     }
42   }
43
44   /**
45    * Creates a new HttpStreamSelectorTest instance.
46    */

47   public HttpStreamSelectorTest(String JavaDoc aName) {
48     super(aName);
49   }
50
51   public void testDefaultSelector() throws Exception JavaDoc {
52     HttpStreamSelector selector = new HttpStreamSelector();
53     assertTrue(!selector.selectStream(ubikHeader));
54     assertTrue(selector.selectStream(simpleHttpHeader));
55     assertTrue(selector.selectStream(complexHttpHeader));
56   }
57
58   public void testHttpMethodSelector() throws Exception JavaDoc {
59     HttpStreamSelector selector = new HttpStreamSelector("POST", null);
60     assertTrue(!selector.selectStream(ubikHeader));
61     assertTrue(selector.selectStream(simpleHttpHeader));
62     assertTrue(!selector.selectStream(complexHttpHeader));
63
64     selector = new HttpStreamSelector("GET", null);
65     assertTrue(!selector.selectStream(ubikHeader));
66     assertTrue(!selector.selectStream(simpleHttpHeader));
67     assertTrue(selector.selectStream(complexHttpHeader));
68
69     selector = new HttpStreamSelector("OPTIONS", null);
70     assertTrue(!selector.selectStream(ubikHeader));
71     assertTrue(!selector.selectStream(simpleHttpHeader));
72     assertTrue(!selector.selectStream(complexHttpHeader));
73   }
74
75   public void testRequestPatternSelector() throws Exception JavaDoc {
76     HttpStreamSelector selector = new HttpStreamSelector(null, "/");
77     assertTrue(!selector.selectStream(ubikHeader));
78     assertTrue(selector.selectStream(simpleHttpHeader));
79     assertTrue(selector.selectStream(complexHttpHeader));
80
81     selector = new HttpStreamSelector(null, "/server/mplex");
82     assertTrue(!selector.selectStream(ubikHeader));
83     assertTrue(!selector.selectStream(simpleHttpHeader));
84     assertTrue(selector.selectStream(complexHttpHeader));
85
86     selector = new HttpStreamSelector(null, "/ubik");
87     assertTrue(!selector.selectStream(ubikHeader));
88     assertTrue(!selector.selectStream(simpleHttpHeader));
89     assertTrue(!selector.selectStream(complexHttpHeader));
90   }
91
92   public void testHttpMethodAndRequestPatternSelector()
93     throws Exception JavaDoc {
94     HttpStreamSelector selector = new HttpStreamSelector("POST", "/");
95     assertTrue(!selector.selectStream(ubikHeader));
96     assertTrue(selector.selectStream(simpleHttpHeader));
97     assertTrue(!selector.selectStream(complexHttpHeader));
98
99     selector = new HttpStreamSelector("GET", "/");
100     assertTrue(!selector.selectStream(ubikHeader));
101     assertTrue(!selector.selectStream(simpleHttpHeader));
102     assertTrue(selector.selectStream(complexHttpHeader));
103
104     selector = new HttpStreamSelector("POST", "/server/mplex");
105     assertTrue(!selector.selectStream(ubikHeader));
106     assertTrue(!selector.selectStream(simpleHttpHeader));
107     assertTrue(!selector.selectStream(complexHttpHeader));
108
109     selector = new HttpStreamSelector("GET", "/server/mplex");
110     assertTrue(!selector.selectStream(ubikHeader));
111     assertTrue(!selector.selectStream(simpleHttpHeader));
112     assertTrue(selector.selectStream(complexHttpHeader));
113
114     selector = new HttpStreamSelector("POST", "/ubik");
115     assertTrue(!selector.selectStream(ubikHeader));
116     assertTrue(!selector.selectStream(simpleHttpHeader));
117     assertTrue(!selector.selectStream(complexHttpHeader));
118   }
119 }
120
Popular Tags