KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > gargoylesoftware > htmlunit > Base64Test


1 /*
2  * Copyright (c) 2002, 2005 Gargoyle Software Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions are met:
6  *
7  * 1. Redistributions of source code must retain the above copyright notice,
8  * this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright notice,
10  * this list of conditions and the following disclaimer in the documentation
11  * and/or other materials provided with the distribution.
12  * 3. The end-user documentation included with the redistribution, if any, must
13  * include the following acknowledgment:
14  *
15  * "This product includes software developed by Gargoyle Software Inc.
16  * (http://www.GargoyleSoftware.com/)."
17  *
18  * Alternately, this acknowledgment may appear in the software itself, if
19  * and wherever such third-party acknowledgments normally appear.
20  * 4. The name "Gargoyle Software" must not be used to endorse or promote
21  * products derived from this software without prior written permission.
22  * For written permission, please contact info@GargoyleSoftware.com.
23  * 5. Products derived from this software may not be called "HtmlUnit", nor may
24  * "HtmlUnit" appear in their name, without prior written permission of
25  * Gargoyle Software Inc.
26  *
27  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
28  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
29  * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARGOYLE
30  * SOFTWARE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
31  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
32  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
33  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
36  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37  */

38 package com.gargoylesoftware.htmlunit;
39
40 /**
41  * Tests for Base64
42  *
43  * @version $Revision: 1.9 $
44  * @author <a HREF="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
45  * @deprecated Marked deprecated to avoid warnings as it tests a deprecated class
46  */

47 public class Base64Test extends WebTestCase {
48     /**
49      * Create an instance.
50      * @param name The name of the test.
51      */

52     public Base64Test( final String name ) {
53         super( name );
54     }
55
56
57     /**
58      * Test {@link Base64#encode(String)}
59      */

60     public void testEncode() {
61         final String data[][] = {
62             {"", ""},
63             {"a", "YQ=="},
64             {"bc", "YmM="},
65             {"def", "ZGVm"},
66             {"ghij", "Z2hpag=="},
67             {"klmno", "a2xtbm8="},
68             {"pqrztu", "cHFyenR1"},
69         };
70
71         for( int i = 0; i < data.length; i++ ) {
72             final String input = data[i][0];
73             final String expectedOutput = data[i][1];
74
75             assertEquals( "encoding \"" + input + "\"", expectedOutput, Base64.encode( input ) );
76         }
77     }
78
79
80     /**
81      * Test {@link Base64#encode(String,String)} with a null string.
82      * @throws Exception if the test fails
83      */

84     public void testEncodeStringEncoding_NullString()
85         throws Exception {
86         try {
87             Base64.encode( null, "us-ascii" );
88             fail( "Expected NullPointerException" );
89         }
90         catch( final NullPointerException e ) {
91             // Expected path
92
}
93     }
94
95
96     /**
97      * Test {@link Base64#encode(String,String)} with a null encoding.
98      * @throws Exception if the test fails
99      */

100     public void testEncodeStringEncoding_NullEncoding()
101         throws Exception {
102         try {
103             Base64.encode( null, "us-ascii" );
104             fail( "Expected NullPointerException" );
105         }
106         catch( final NullPointerException e ) {
107             // Expected path
108
}
109     }
110
111
112     /**
113      * Test {@link Base64#encode(String)} with a null string.
114      * @throws Exception if the test fails
115      */

116     public void testEncodeString_Null()
117         throws Exception {
118         try {
119             Base64.encode( ( String )null );
120             fail( "Expected NullPointerException" );
121         }
122         catch( final NullPointerException e ) {
123             // Expected path
124
}
125     }
126
127
128     /**
129      * Test {@link Base64#encode(String,String)} with a null encoding.
130      * @throws Exception if the test fails
131      */

132     public void testEncodeBytes_NullArray()
133         throws Exception {
134         try {
135             Base64.encode( "foo", null );
136             fail( "Expected NullPointerException" );
137         }
138         catch( final NullPointerException e ) {
139             // Expected path
140
}
141     }
142 }
143
144
Popular Tags