View Javadoc
1   package org.apache.maven.wagon.shared.http;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *   http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  import junit.framework.TestCase;
23  
24  import java.net.MalformedURLException;
25  import java.net.URISyntaxException;
26  
27  public class EncodingUtilTest
28      extends TestCase
29  {
30      public void testEncodeURLWithSpaces()
31          throws URISyntaxException, MalformedURLException
32      {
33          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/path with spaces" );
34  
35          assertEquals( "file://host:1/path%20with%20spaces", encodedURL );
36      }
37  
38      public void testEncodeURLWithSpacesInPath()
39          throws URISyntaxException, MalformedURLException
40      {
41          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1", "path with spaces" );
42  
43          assertEquals( "file://host:1/path%20with%20spaces", encodedURL );
44      }
45  
46      public void testEncodeURLWithSpacesInBothBaseAndPath()
47          throws URISyntaxException, MalformedURLException
48      {
49          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/with%20a", "path with spaces" );
50  
51          assertEquals( "file://host:1/with%20a/path%20with%20spaces", encodedURL );
52      }
53  
54      public void testEncodeURLWithSlashes1()
55          throws URISyntaxException, MalformedURLException
56      {
57          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath", "a", "b", "c" );
58  
59          assertEquals( "file://host:1/basePath/a/b/c", encodedURL );
60  
61          encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath", "a/b/c" );
62  
63          assertEquals( "file://host:1/basePath/a/b/c", encodedURL );
64      }
65  
66      public void testEncodeURLWithSlashes2()
67          throws URISyntaxException, MalformedURLException
68      {
69          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath/", "a", "b", "c" );
70  
71          assertEquals( "file://host:1/basePath/a/b/c", encodedURL );
72  
73          encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath/", "a/b/c" );
74  
75          assertEquals( "file://host:1/basePath/a/b/c", encodedURL );
76      }
77  
78      public void testEncodeURLWithSlashes3()
79              throws URISyntaxException, MalformedURLException
80      {
81          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath/", new String[0] );
82  
83          assertEquals( "file://host:1/basePath/", encodedURL );
84      }
85  
86      public void testEncodeURLWithSlashes4()
87          throws URISyntaxException, MalformedURLException
88      {
89          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath", new String[0] );
90  
91          assertEquals( "file://host:1/basePath", encodedURL );
92      }
93  
94      public void testEncodeURLWithSlashes5()
95          throws URISyntaxException, MalformedURLException
96      {
97          String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/basePath",
98                                                              "a/1", "b/1", "c/1" );
99  
100         assertEquals( "file://host:1/basePath/a%2F1/b%2F1/c%2F1", encodedURL );
101     }
102 
103     public void testEncodeURLWithSlashes6()
104         throws URISyntaxException, MalformedURLException
105     {
106         String encodedURL = EncodingUtil.encodeURLToString( "file://host:1/", new String[0] );
107 
108         assertEquals( "file://host:1/", encodedURL );
109     }
110 
111     public void testEncodeURLWithSlashes7()
112         throws URISyntaxException, MalformedURLException
113     {
114         String encodedURL = EncodingUtil.encodeURLToString( "file://host:1", new String[0] );
115 
116         assertEquals( "file://host:1", encodedURL );
117     }
118 }