View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   https://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.commons.compress.compressors;
20  
21  import static org.junit.jupiter.api.Assertions.assertEquals;
22  import static org.junit.jupiter.api.Assertions.assertFalse;
23  import static org.junit.jupiter.api.Assertions.assertTrue;
24  
25  import org.apache.commons.compress.compressors.gzip.GzipUtils;
26  import org.junit.jupiter.api.Test;
27  
28  /**
29   * Tests {@link GzipUtils}.
30   */
31  class GzipUtilsTest {
32  
33      @SuppressWarnings("deprecation")
34      @Test
35      void testGetCompressedFileName() {
36          assertEquals(".gz", GzipUtils.getCompressedFilename(""));
37          assertEquals(".gz", GzipUtils.getCompressedFileName(""));
38          assertEquals("x.gz", GzipUtils.getCompressedFilename("x"));
39          assertEquals("x.gz", GzipUtils.getCompressedFileName("x"));
40  
41          assertEquals("x.tgz", GzipUtils.getCompressedFilename("x.tar"));
42          assertEquals("x.tgz", GzipUtils.getCompressedFileName("x.tar"));
43          assertEquals("x.svgz", GzipUtils.getCompressedFilename("x.svg"));
44          assertEquals("x.svgz", GzipUtils.getCompressedFileName("x.svg"));
45          assertEquals("x.cpgz", GzipUtils.getCompressedFilename("x.cpio"));
46          assertEquals("x.cpgz", GzipUtils.getCompressedFileName("x.cpio"));
47          assertEquals("x.wmz", GzipUtils.getCompressedFilename("x.wmf"));
48          assertEquals("x.wmz", GzipUtils.getCompressedFileName("x.wmf"));
49          assertEquals("x.emz", GzipUtils.getCompressedFilename("x.emf"));
50          assertEquals("x.emz", GzipUtils.getCompressedFileName("x.emf"));
51  
52          assertEquals("x.svgz", GzipUtils.getCompressedFilename("x.SVG"));
53          assertEquals("x.svgz", GzipUtils.getCompressedFileName("x.SVG"));
54          assertEquals("X.svgz", GzipUtils.getCompressedFilename("X.SVG"));
55          assertEquals("X.svgz", GzipUtils.getCompressedFileName("X.SVG"));
56          assertEquals("X.svgz", GzipUtils.getCompressedFilename("X.svG"));
57          assertEquals("X.svgz", GzipUtils.getCompressedFileName("X.svG"));
58  
59          assertEquals("x.wmf .gz", GzipUtils.getCompressedFilename("x.wmf "));
60          assertEquals("x.wmf .gz", GzipUtils.getCompressedFileName("x.wmf "));
61          assertEquals("x.wmf\n.gz", GzipUtils.getCompressedFilename("x.wmf\n"));
62          assertEquals("x.wmf\n.gz", GzipUtils.getCompressedFileName("x.wmf\n"));
63          assertEquals("x.wmf.y.gz", GzipUtils.getCompressedFilename("x.wmf.y"));
64          assertEquals("x.wmf.y.gz", GzipUtils.getCompressedFileName("x.wmf.y"));
65      }
66  
67      @SuppressWarnings("deprecation")
68      @Test
69      void testGetUncompressedFileName() {
70          assertEquals("", GzipUtils.getUncompressedFilename(""));
71          assertEquals("", GzipUtils.getUncompressedFileName(""));
72          assertEquals(".gz", GzipUtils.getUncompressedFilename(".gz"));
73          assertEquals(".gz", GzipUtils.getUncompressedFileName(".gz"));
74          assertEquals("tar", GzipUtils.getUncompressedFileName("tar.gz"));
75          assertEquals(".tar", GzipUtils.getUncompressedFileName(".tar.gz"));
76          assertEquals("x.tar", GzipUtils.getUncompressedFileName("x.tar.gz"));
77  
78          assertEquals("x.tar", GzipUtils.getUncompressedFilename("x.tgz"));
79          assertEquals("x.tar", GzipUtils.getUncompressedFileName("x.tgz"));
80          assertEquals("x.tar", GzipUtils.getUncompressedFilename("x.taz"));
81          assertEquals("x.tar", GzipUtils.getUncompressedFileName("x.taz"));
82          assertEquals("x.svg", GzipUtils.getUncompressedFilename("x.svgz"));
83          assertEquals("x.svg", GzipUtils.getUncompressedFileName("x.svgz"));
84          assertEquals("x.cpio", GzipUtils.getUncompressedFilename("x.cpgz"));
85          assertEquals("x.cpio", GzipUtils.getUncompressedFileName("x.cpgz"));
86          assertEquals("x.wmf", GzipUtils.getUncompressedFilename("x.wmz"));
87          assertEquals("x.wmf", GzipUtils.getUncompressedFileName("x.wmz"));
88          assertEquals("x.emf", GzipUtils.getUncompressedFilename("x.emz"));
89          assertEquals("x.emf", GzipUtils.getUncompressedFileName("x.emz"));
90          assertEquals("x", GzipUtils.getUncompressedFilename("x.gz"));
91          assertEquals("x", GzipUtils.getUncompressedFileName("x.gz"));
92          assertEquals("x", GzipUtils.getUncompressedFilename("x.z"));
93          assertEquals("x", GzipUtils.getUncompressedFileName("x.z"));
94          assertEquals("x", GzipUtils.getUncompressedFilename("x-gz"));
95          assertEquals("x", GzipUtils.getUncompressedFileName("x-gz"));
96          assertEquals("x", GzipUtils.getUncompressedFilename("x-z"));
97          assertEquals("x", GzipUtils.getUncompressedFileName("x-z"));
98          assertEquals("x", GzipUtils.getUncompressedFilename("x_z"));
99          assertEquals("x", GzipUtils.getUncompressedFileName("x_z"));
100 
101         assertEquals("x.svg", GzipUtils.getUncompressedFilename("x.SVGZ"));
102         assertEquals("x.svg", GzipUtils.getUncompressedFileName("x.SVGZ"));
103         assertEquals("X.svg", GzipUtils.getUncompressedFilename("X.SVGZ"));
104         assertEquals("X.svg", GzipUtils.getUncompressedFileName("X.SVGZ"));
105         assertEquals("X.svg", GzipUtils.getUncompressedFilename("X.svGZ"));
106         assertEquals("X.svg", GzipUtils.getUncompressedFileName("X.svGZ"));
107 
108         assertEquals("x.wmz ", GzipUtils.getUncompressedFilename("x.wmz "));
109         assertEquals("x.wmz ", GzipUtils.getUncompressedFileName("x.wmz "));
110         assertEquals("x.wmz\n", GzipUtils.getUncompressedFilename("x.wmz\n"));
111         assertEquals("x.wmz\n", GzipUtils.getUncompressedFileName("x.wmz\n"));
112         assertEquals("x.wmz.y", GzipUtils.getUncompressedFilename("x.wmz.y"));
113         assertEquals("x.wmz.y", GzipUtils.getUncompressedFileName("x.wmz.y"));
114     }
115 
116     @SuppressWarnings("deprecation")
117     @Test
118     void testIsCompressedFileName() {
119         assertFalse(GzipUtils.isCompressedFilename(""));
120         assertFalse(GzipUtils.isCompressedFileName(""));
121         assertFalse(GzipUtils.isCompressedFilename(".gz"));
122         assertFalse(GzipUtils.isCompressedFileName(".gz"));
123 
124         assertTrue(GzipUtils.isCompressedFilename("x.tgz"));
125         assertTrue(GzipUtils.isCompressedFileName("x.tgz"));
126         assertTrue(GzipUtils.isCompressedFilename("x.taz"));
127         assertTrue(GzipUtils.isCompressedFileName("x.taz"));
128         assertTrue(GzipUtils.isCompressedFilename("x.svgz"));
129         assertTrue(GzipUtils.isCompressedFileName("x.svgz"));
130         assertTrue(GzipUtils.isCompressedFilename("x.cpgz"));
131         assertTrue(GzipUtils.isCompressedFileName("x.cpgz"));
132         assertTrue(GzipUtils.isCompressedFilename("x.wmz"));
133         assertTrue(GzipUtils.isCompressedFileName("x.wmz"));
134         assertTrue(GzipUtils.isCompressedFilename("x.emz"));
135         assertTrue(GzipUtils.isCompressedFileName("x.emz"));
136         assertTrue(GzipUtils.isCompressedFilename("x.gz"));
137         assertTrue(GzipUtils.isCompressedFileName("x.gz"));
138         assertTrue(GzipUtils.isCompressedFilename("x.z"));
139         assertTrue(GzipUtils.isCompressedFileName("x.z"));
140         assertTrue(GzipUtils.isCompressedFilename("x-gz"));
141         assertTrue(GzipUtils.isCompressedFileName("x-gz"));
142         assertTrue(GzipUtils.isCompressedFilename("x-z"));
143         assertTrue(GzipUtils.isCompressedFileName("x-z"));
144         assertTrue(GzipUtils.isCompressedFilename("x_z"));
145         assertTrue(GzipUtils.isCompressedFileName("x_z"));
146 
147         assertFalse(GzipUtils.isCompressedFilename("xxgz"));
148         assertFalse(GzipUtils.isCompressedFileName("xxgz"));
149         assertFalse(GzipUtils.isCompressedFilename("xzz"));
150         assertFalse(GzipUtils.isCompressedFileName("xzz"));
151         assertFalse(GzipUtils.isCompressedFilename("xaz"));
152         assertFalse(GzipUtils.isCompressedFileName("xaz"));
153 
154         assertTrue(GzipUtils.isCompressedFilename("x.SVGZ"));
155         assertTrue(GzipUtils.isCompressedFileName("x.SVGZ"));
156         assertTrue(GzipUtils.isCompressedFilename("x.Svgz"));
157         assertTrue(GzipUtils.isCompressedFileName("x.Svgz"));
158         assertTrue(GzipUtils.isCompressedFilename("x.svGZ"));
159         assertTrue(GzipUtils.isCompressedFileName("x.svGZ"));
160 
161         assertFalse(GzipUtils.isCompressedFilename("x.wmz "));
162         assertFalse(GzipUtils.isCompressedFileName("x.wmz "));
163         assertFalse(GzipUtils.isCompressedFilename("x.wmz\n"));
164         assertFalse(GzipUtils.isCompressedFileName("x.wmz\n"));
165         assertFalse(GzipUtils.isCompressedFilename("x.wmz.y"));
166         assertFalse(GzipUtils.isCompressedFileName("x.wmz.y"));
167     }
168 
169 }