View Javadoc

1   package com.atlassian.plugin.util.zip;
2   
3   import org.junit.Test;
4   
5   import static com.atlassian.plugin.util.zip.AbstractUnzipper.normaliseAndVerify;
6   import static org.junit.Assert.assertEquals;
7   
8   public class AbstractUnzipperTest
9   {
10      @Test
11      public void testNormaliseAndVerifySimple()
12      {
13          assertEquals("simple", normaliseAndVerify("simple"));
14      }
15  
16      @Test
17      public void testNormaliseAndVerifySubdir()
18      {
19          assertEquals("subdir/file", normaliseAndVerify("subdir/file"));
20      }
21  
22      @Test
23      public void testNormaliseAndVerifyRelativeSimple()
24      {
25          assertEquals("test-relative.txt", normaliseAndVerify("something/../test-relative.txt"));
26      }
27  
28      @Test
29      public void testNormaliseAndVerifyRelativeComplex()
30      {
31          assertEquals("test-relative.txt", normaliseAndVerify("./something/.././test-relative.txt"));
32      }
33  
34      @Test(expected=IllegalArgumentException.class)
35      public void testNormaliseAndVerifyIllegalRelative()
36      {
37          normaliseAndVerify("something/../../test-relative.txt");
38      }
39  
40      @Test(expected=IllegalArgumentException.class)
41      public void testNormaliseAndVerifyIllegalRelativeTrailingDots()
42      {
43          normaliseAndVerify("something/../test-relative.txt/..");
44      }
45  
46      @Test(expected=IllegalArgumentException.class)
47      public void testNormaliseAndVerifyIllegalRelativeLeadingSlash()
48      {
49          normaliseAndVerify("/something/../../test-relative.txt");
50      }
51  
52      @Test(expected=IllegalArgumentException.class)
53      public void testNormaliseAndVerifyIllegalRelativeLeadingDots()
54      {
55          normaliseAndVerify("../test-relative.txt");
56      }
57  
58      @Test(expected=IllegalArgumentException.class)
59      public void testNormaliseAndVerifyIllegalRelativeLeadingSeriesOfDots()
60      {
61          normaliseAndVerify("./../test-relative.txt");
62      }
63  }