author | lancea |
Tue, 29 Oct 2019 14:22:18 -0400 | |
changeset 58845 | e492513d3630 |
parent 54693 | d890ba18f64b |
permissions | -rw-r--r-- |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
1 |
/* |
54641 | 2 |
* Copyright (c) 2009, 2019, Oracle and/or its affiliates. All rights reserved. |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
3 |
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
4 |
* |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
5 |
* This code is free software; you can redistribute it and/or modify it |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
6 |
* under the terms of the GNU General Public License version 2 only, as |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
7 |
* published by the Free Software Foundation. |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
8 |
* |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
9 |
* This code is distributed in the hope that it will be useful, but WITHOUT |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
10 |
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
11 |
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
12 |
* version 2 for more details (a copy is included in the LICENSE file that |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
13 |
* accompanied this code). |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
14 |
* |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
15 |
* You should have received a copy of the GNU General Public License version |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
16 |
* 2 along with this work; if not, write to the Free Software Foundation, |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
17 |
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
18 |
* |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
19 |
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
20 |
* or visit www.oracle.com if you need additional information or have any |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
21 |
* questions. |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
22 |
*/ |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
23 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
24 |
import java.io.IOException; |
27565 | 25 |
import java.nio.file.FileSystem; |
26 |
import java.nio.file.FileSystems; |
|
27 |
import java.nio.file.Files; |
|
28 |
import java.nio.file.InvalidPathException; |
|
29 |
import java.nio.file.Path; |
|
46901
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
30 |
import java.nio.file.Paths; |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
31 |
import java.nio.file.ProviderMismatchException; |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
32 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
33 |
/** |
23925
0d5f2d863262
8038500: (zipfs) Upgrade ZIP provider to be a supported provider
sherman
parents:
9035
diff
changeset
|
34 |
* |
0d5f2d863262
8038500: (zipfs) Upgrade ZIP provider to be a supported provider
sherman
parents:
9035
diff
changeset
|
35 |
* @test |
46901
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
36 |
* @bug 8038500 8040059 8139956 8146754 8172921 8186142 |
23925
0d5f2d863262
8038500: (zipfs) Upgrade ZIP provider to be a supported provider
sherman
parents:
9035
diff
changeset
|
37 |
* @summary Tests path operations for zip provider. |
24364
da8afb112f5d
8040059: Change default policy for extensions to no permission
mchung
parents:
23925
diff
changeset
|
38 |
* |
48768
ac007e4bbf4b
8178342: Missing @modules in jdk/jdk/nio/zipfs
shurailine
parents:
47216
diff
changeset
|
39 |
* @modules jdk.zipfs |
24364
da8afb112f5d
8040059: Change default policy for extensions to no permission
mchung
parents:
23925
diff
changeset
|
40 |
* @run main PathOps |
27565 | 41 |
* @run main/othervm/java.security.policy=test.policy PathOps |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
42 |
*/ |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
43 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
44 |
public class PathOps { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
45 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
46 |
static final java.io.PrintStream out = System.out; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
47 |
static FileSystem fs; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
48 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
49 |
private Path path; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
50 |
private Exception exc; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
51 |
|
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
52 |
private PathOps(String first, String... more) { |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
53 |
out.println(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
54 |
try { |
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
55 |
path = fs.getPath(first, more); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
56 |
out.format("%s -> %s", first, path); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
57 |
} catch (Exception x) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
58 |
exc = x; |
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
59 |
out.format("%s -> %s", first, x); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
60 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
61 |
out.println(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
62 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
63 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
64 |
Path path() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
65 |
return path; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
66 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
67 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
68 |
void fail() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
69 |
throw new RuntimeException("PathOps failed"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
70 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
71 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
72 |
void checkPath() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
73 |
if (path == null) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
74 |
throw new InternalError("path is null"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
75 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
76 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
77 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
78 |
void check(Object result, String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
79 |
out.format("\tExpected: %s\n", expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
80 |
out.format("\tActual: %s\n", result); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
81 |
if (result == null) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
82 |
if (expected == null) return; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
83 |
} else { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
84 |
// compare string representations |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
85 |
if (expected != null && result.toString().equals(expected.toString())) |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
86 |
return; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
87 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
88 |
fail(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
89 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
90 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
91 |
void check(Object result, boolean expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
92 |
check(result, Boolean.toString(expected)); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
93 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
94 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
95 |
PathOps root(String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
96 |
out.println("check root"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
97 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
98 |
check(path.getRoot(), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
99 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
100 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
101 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
102 |
PathOps parent(String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
103 |
out.println("check parent"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
104 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
105 |
check(path.getParent(), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
106 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
107 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
108 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
109 |
PathOps name(String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
110 |
out.println("check name"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
111 |
checkPath(); |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
112 |
check(path.getFileName(), expected); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
113 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
114 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
115 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
116 |
PathOps element(int index, String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
117 |
out.format("check element %d\n", index); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
118 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
119 |
check(path.getName(index), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
120 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
121 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
122 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
123 |
PathOps subpath(int startIndex, int endIndex, String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
124 |
out.format("test subpath(%d,%d)\n", startIndex, endIndex); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
125 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
126 |
check(path.subpath(startIndex, endIndex), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
127 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
128 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
129 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
130 |
PathOps starts(String prefix) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
131 |
out.format("test startsWith with %s\n", prefix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
132 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
133 |
Path s = fs.getPath(prefix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
134 |
check(path.startsWith(s), true); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
135 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
136 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
137 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
138 |
PathOps notStarts(String prefix) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
139 |
out.format("test not startsWith with %s\n", prefix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
140 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
141 |
Path s = fs.getPath(prefix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
142 |
check(path.startsWith(s), false); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
143 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
144 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
145 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
146 |
PathOps ends(String suffix) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
147 |
out.format("test endsWith %s\n", suffix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
148 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
149 |
Path s = fs.getPath(suffix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
150 |
check(path.endsWith(s), true); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
151 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
152 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
153 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
154 |
PathOps notEnds(String suffix) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
155 |
out.format("test not endsWith %s\n", suffix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
156 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
157 |
Path s = fs.getPath(suffix); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
158 |
check(path.endsWith(s), false); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
159 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
160 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
161 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
162 |
PathOps absolute() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
163 |
out.println("check path is absolute"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
164 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
165 |
check(path.isAbsolute(), true); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
166 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
167 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
168 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
169 |
PathOps notAbsolute() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
170 |
out.println("check path is not absolute"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
171 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
172 |
check(path.isAbsolute(), false); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
173 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
174 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
175 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
176 |
PathOps resolve(String other, String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
177 |
out.format("test resolve %s\n", other); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
178 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
179 |
check(path.resolve(other), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
180 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
181 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
182 |
|
43193
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
183 |
PathOps resolvePath(String other, String expected) { |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
184 |
out.format("test resolve %s\n", other); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
185 |
checkPath(); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
186 |
check(path.resolve(fs.getPath(other)), expected); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
187 |
return this; |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
188 |
} |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
189 |
|
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
190 |
PathOps resolveSibling(String other, String expected) { |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
191 |
out.format("test resolveSibling %s\n", other); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
192 |
checkPath(); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
193 |
check(path.resolveSibling(other), expected); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
194 |
return this; |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
195 |
} |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
196 |
|
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
197 |
PathOps relativize(String other, String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
198 |
out.format("test relativize %s\n", other); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
199 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
200 |
Path that = fs.getPath(other); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
201 |
check(path.relativize(that), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
202 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
203 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
204 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
205 |
PathOps normalize(String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
206 |
out.println("check normalized path"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
207 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
208 |
check(path.normalize(), expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
209 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
210 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
211 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
212 |
PathOps string(String expected) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
213 |
out.println("check string representation"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
214 |
checkPath(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
215 |
check(path, expected); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
216 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
217 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
218 |
|
8005
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
219 |
PathOps isSameFile(String target) { |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
220 |
try { |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
221 |
out.println("check two paths are same"); |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
222 |
checkPath(); |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
223 |
check(Files.isSameFile(path, test(target).path()), true); |
8005
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
224 |
} catch (IOException ioe) { |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
225 |
fail(); |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
226 |
} |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
227 |
return this; |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
228 |
} |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
229 |
|
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
230 |
PathOps invalid() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
231 |
if (!(exc instanceof InvalidPathException)) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
232 |
out.println("InvalidPathException not thrown as expected"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
233 |
fail(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
234 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
235 |
return this; |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
236 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
237 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
238 |
static PathOps test(String s) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
239 |
return new PathOps(s); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
240 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
241 |
|
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
242 |
static PathOps test(String first, String... more) { |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
243 |
return new PathOps(first, more); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
244 |
} |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
245 |
|
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
246 |
// -- PathOpss -- |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
247 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
248 |
static void header(String s) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
249 |
out.println(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
250 |
out.println(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
251 |
out.println("-- " + s + " --"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
252 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
253 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
254 |
static void doPathOpTests() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
255 |
header("Path operations"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
256 |
|
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
257 |
// construction |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
258 |
test("/") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
259 |
.string("/"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
260 |
test("/", "") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
261 |
.string("/"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
262 |
test("/", "foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
263 |
.string("/foo"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
264 |
test("/", "/foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
265 |
.string("/foo"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
266 |
test("/", "foo/") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
267 |
.string("/foo"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
268 |
test("foo", "bar", "gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
269 |
.string("foo/bar/gus"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
270 |
test("") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
271 |
.string(""); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
272 |
test("", "/") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
273 |
.string("/"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
274 |
test("", "foo", "", "bar", "", "/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
275 |
.string("foo/bar/gus"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
276 |
|
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
277 |
// all components |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
278 |
test("/a/b/c") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
279 |
.root("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
280 |
.parent("/a/b") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
281 |
.name("c"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
282 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
283 |
// root component only |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
284 |
test("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
285 |
.root("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
286 |
.parent(null) |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
287 |
.name(null); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
288 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
289 |
// no root component |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
290 |
test("a/b") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
291 |
.root(null) |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
292 |
.parent("a") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
293 |
.name("b"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
294 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
295 |
// name component only |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
296 |
test("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
297 |
.root(null) |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
298 |
.parent(null) |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
299 |
.name("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
300 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
301 |
// startsWith |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
302 |
test("") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
303 |
.starts("") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
304 |
.notStarts("/"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
305 |
test("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
306 |
.starts("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
307 |
.notStarts("/foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
308 |
test("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
309 |
.starts("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
310 |
.starts("/foo") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
311 |
.notStarts("/f") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
312 |
.notStarts(""); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
313 |
test("/foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
314 |
.starts("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
315 |
.starts("/foo") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
316 |
.starts("/foo/") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
317 |
.starts("/foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
318 |
.notStarts("/f") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
319 |
.notStarts("foo") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
320 |
.notStarts("foo/bar") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
321 |
.notStarts(""); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
322 |
test("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
323 |
.starts("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
324 |
.notStarts("f"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
325 |
test("foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
326 |
.starts("foo") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
327 |
.starts("foo/") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
328 |
.starts("foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
329 |
.notStarts("f") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
330 |
.notStarts("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
331 |
.notStarts("/foo/bar"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
332 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
333 |
// endsWith |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
334 |
test("") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
335 |
.ends("") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
336 |
.notEnds("/"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
337 |
test("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
338 |
.ends("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
339 |
.notEnds("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
340 |
.notEnds("/foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
341 |
test("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
342 |
.ends("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
343 |
.ends("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
344 |
.notEnds("/"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
345 |
test("/foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
346 |
.ends("bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
347 |
.ends("foo/bar") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
348 |
.ends("foo/bar/") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
349 |
.ends("/foo/bar") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
350 |
.notEnds("/bar"); |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
351 |
test("/foo/bar/") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
352 |
.ends("bar") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
353 |
.ends("foo/bar") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
354 |
.ends("foo/bar/") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
355 |
.ends("/foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
356 |
.notEnds("/bar"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
357 |
test("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
358 |
.ends("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
359 |
test("foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
360 |
.ends("bar") |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
361 |
.ends("bar/") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
362 |
.ends("foo/bar/") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
363 |
.ends("foo/bar"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
364 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
365 |
// elements |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
366 |
test("a/b/c") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
367 |
.element(0,"a") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
368 |
.element(1,"b") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
369 |
.element(2,"c"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
370 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
371 |
// isAbsolute |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
372 |
test("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
373 |
.absolute(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
374 |
test("/tmp") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
375 |
.absolute(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
376 |
test("tmp") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
377 |
.notAbsolute(); |
8180
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
378 |
test("") |
ac21bc160e79
7005986: (zipfs) ZipPath.startsWith() fails because of the implementation of getName(index)
sherman
parents:
8165
diff
changeset
|
379 |
.notAbsolute(); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
380 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
381 |
// resolve |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
382 |
test("/tmp") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
383 |
.resolve("foo", "/tmp/foo") |
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
384 |
.resolve("/foo", "/foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
385 |
.resolve("", "/tmp"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
386 |
test("tmp") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
387 |
.resolve("foo", "tmp/foo") |
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
388 |
.resolve("/foo", "/foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
389 |
.resolve("", "tmp"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
390 |
test("") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
391 |
.resolve("", "") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
392 |
.resolve("foo", "foo") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
393 |
.resolve("/foo", "/foo"); |
43193
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
394 |
test("/") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
395 |
.resolve("", "/") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
396 |
.resolve("foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
397 |
.resolve("/foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
398 |
.resolve("/foo/", "/foo"); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
399 |
|
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
400 |
// resolve(Path) |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
401 |
test("/tmp") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
402 |
.resolvePath("foo", "/tmp/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
403 |
.resolvePath("/foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
404 |
.resolvePath("", "/tmp"); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
405 |
test("tmp") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
406 |
.resolvePath("foo", "tmp/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
407 |
.resolvePath("/foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
408 |
.resolvePath("", "tmp"); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
409 |
test("") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
410 |
.resolvePath("", "") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
411 |
.resolvePath("foo", "foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
412 |
.resolvePath("/foo", "/foo"); |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
413 |
test("/") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
414 |
.resolvePath("", "/") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
415 |
.resolvePath("foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
416 |
.resolvePath("/foo", "/foo") |
a8e490921d20
8172921: Zip filesystem performance improvement and code cleanup
sherman
parents:
38568
diff
changeset
|
417 |
.resolvePath("/foo/", "/foo"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
418 |
|
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
419 |
// resolveSibling |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
420 |
test("foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
421 |
.resolveSibling("bar", "bar") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
422 |
.resolveSibling("/bar", "/bar") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
423 |
.resolveSibling("", ""); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
424 |
test("foo/bar") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
425 |
.resolveSibling("gus", "foo/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
426 |
.resolveSibling("/gus", "/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
427 |
.resolveSibling("", "foo"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
428 |
test("/foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
429 |
.resolveSibling("gus", "/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
430 |
.resolveSibling("/gus", "/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
431 |
.resolveSibling("", "/"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
432 |
test("/foo/bar") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
433 |
.resolveSibling("gus", "/foo/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
434 |
.resolveSibling("/gus", "/gus") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
435 |
.resolveSibling("", "/foo"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
436 |
test("") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
437 |
.resolveSibling("foo", "foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
438 |
.resolveSibling("/foo", "/foo") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
439 |
.resolve("", ""); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
440 |
|
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
441 |
// relativize |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
442 |
test("/a/b/c") |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
443 |
.relativize("/a/b/c", "") |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
444 |
.relativize("/a/b/c/d/e", "d/e") |
37803
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
445 |
.relativize("/a/x", "../../x") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
446 |
.relativize("/x", "../../../x"); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
447 |
test("a/b/c") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
448 |
.relativize("a/b/c/d", "d") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
449 |
.relativize("a/x", "../../x") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
450 |
.relativize("x", "../../../x") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
451 |
.relativize("", "../../.."); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
452 |
test("") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
453 |
.relativize("a", "a") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
454 |
.relativize("a/b/c", "a/b/c") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
455 |
.relativize("", ""); |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
456 |
test("/") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
457 |
.relativize("/a", "a") |
ac955d7f5271
8150496: (zipfs) Fix performance issues in zip-fs
sherman
parents:
27565
diff
changeset
|
458 |
.relativize("/a/c", "a/c"); |
38568
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
459 |
// 8146754 |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
460 |
test("/tmp/path") |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
461 |
.relativize("/tmp/path/a.txt", "a.txt"); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
462 |
test("/tmp/path/") |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
463 |
.relativize("/tmp/path/a.txt", "a.txt"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
464 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
465 |
// normalize |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
466 |
test("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
467 |
.normalize("/"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
468 |
test("foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
469 |
.normalize("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
470 |
test("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
471 |
.normalize("/foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
472 |
test(".") |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
473 |
.normalize(""); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
474 |
test("..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
475 |
.normalize(".."); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
476 |
test("/..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
477 |
.normalize("/"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
478 |
test("/../..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
479 |
.normalize("/"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
480 |
test("foo/.") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
481 |
.normalize("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
482 |
test("./foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
483 |
.normalize("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
484 |
test("foo/..") |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
485 |
.normalize(""); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
486 |
test("../foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
487 |
.normalize("../foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
488 |
test("../../foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
489 |
.normalize("../../foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
490 |
test("foo/bar/..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
491 |
.normalize("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
492 |
test("foo/bar/gus/../..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
493 |
.normalize("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
494 |
test("/foo/bar/gus/../..") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
495 |
.normalize("/foo"); |
8005
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
496 |
test("/./.") |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
497 |
.normalize("/"); |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
498 |
test("/.") |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
499 |
.normalize("/"); |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
500 |
test("/./abc") |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
501 |
.normalize("/abc"); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
502 |
// invalid |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
503 |
test("foo\u0000bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
504 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
505 |
test("\u0000foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
506 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
507 |
test("bar\u0000") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
508 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
509 |
test("//foo\u0000bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
510 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
511 |
test("//\u0000foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
512 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
513 |
test("//bar\u0000") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
514 |
.invalid(); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
515 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
516 |
// normalization |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
517 |
test("//foo//bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
518 |
.string("/foo/bar") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
519 |
.root("/") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
520 |
.parent("/foo") |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
521 |
.name("bar"); |
8005
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
522 |
|
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
523 |
// isSameFile |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
524 |
test("/fileDoesNotExist") |
5bc99c45810a
7006576: (zipfs) Path.exists() always returns false on dirs when zip/JAR file built without dirs
sherman
parents:
6699
diff
changeset
|
525 |
.isSameFile("/fileDoesNotExist"); |
38568
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
526 |
|
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
527 |
// 8139956 |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
528 |
out.println("check getNameCount"); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
529 |
int nc = fs.getPath("/").relativize(fs.getPath("/")).getNameCount(); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
530 |
if (nc != 1) { |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
531 |
out.format("\tExpected: 1\n"); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
532 |
out.format("\tActual: %d\n", nc); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
533 |
throw new RuntimeException("getNameCount of empty path failed"); |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
534 |
} |
f992c34c85b3
8147539: (zipfs) ZipPath should throw ProviderMismatchException when invoking register()
sherman
parents:
37803
diff
changeset
|
535 |
} |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
536 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
537 |
static void npes() { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
538 |
header("NullPointerException"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
539 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
540 |
Path path = fs.getPath("foo"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
541 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
542 |
try { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
543 |
path.resolve((String)null); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
544 |
throw new RuntimeException("NullPointerException not thrown"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
545 |
} catch (NullPointerException npe) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
546 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
547 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
548 |
try { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
549 |
path.relativize(null); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
550 |
throw new RuntimeException("NullPointerException not thrown"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
551 |
} catch (NullPointerException npe) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
552 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
553 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
554 |
try { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
555 |
path.compareTo(null); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
556 |
throw new RuntimeException("NullPointerException not thrown"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
557 |
} catch (NullPointerException npe) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
558 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
559 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
560 |
try { |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
561 |
path.startsWith((Path)null); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
562 |
throw new RuntimeException("NullPointerException not thrown"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
563 |
} catch (NullPointerException npe) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
564 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
565 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
566 |
try { |
8165
b67d8b1f4e46
7015391: (zipfs) Update zip provider for 1/2011 changes
sherman
parents:
8005
diff
changeset
|
567 |
path.endsWith((Path)null); |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
568 |
throw new RuntimeException("NullPointerException not thrown"); |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
569 |
} catch (NullPointerException npe) { |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
570 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
571 |
|
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
572 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
573 |
|
46901
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
574 |
static void mismatchedProviders() { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
575 |
header("ProviderMismatchException"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
576 |
Path path = fs.getPath("foo"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
577 |
Path other = Paths.get("foo"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
578 |
try { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
579 |
path.compareTo(other); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
580 |
throw new RuntimeException("ProviderMismatchException not thrown"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
581 |
} catch (ProviderMismatchException pme) {} |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
582 |
|
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
583 |
try { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
584 |
path.resolve(other); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
585 |
throw new RuntimeException("ProviderMismatchException not thrown"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
586 |
} catch (ProviderMismatchException pme) {} |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
587 |
|
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
588 |
try { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
589 |
path.relativize(other); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
590 |
throw new RuntimeException("ProviderMismatchException not thrown"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
591 |
} catch (ProviderMismatchException pme) {} |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
592 |
|
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
593 |
try { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
594 |
if (path.startsWith(other)) |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
595 |
throw new RuntimeException("providerMismatched startsWith() returns true "); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
596 |
if (path.endsWith(other)) |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
597 |
throw new RuntimeException("providerMismatched endsWith() returns true "); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
598 |
} catch (ProviderMismatchException pme) { |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
599 |
throw new RuntimeException("ProviderMismatchException is thrown for starts/endsWith()"); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
600 |
} |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
601 |
} |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
602 |
|
27565 | 603 |
public static void main(String[] args) throws IOException { |
604 |
// create empty JAR file, test doesn't require any contents |
|
605 |
Path emptyJar = Utils.createJarFile("empty.jar"); |
|
606 |
||
54693
d890ba18f64b
8218875: Add new FileSystems.newFileSystem methods
lancea
parents:
54641
diff
changeset
|
607 |
fs = FileSystems.newFileSystem(emptyJar); |
27565 | 608 |
try { |
46901
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
609 |
npes(); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
610 |
mismatchedProviders(); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
611 |
doPathOpTests(); |
27565 | 612 |
} finally { |
46901
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
613 |
fs.close(); |
f63587417ae6
8186142: ZipPath.{starts,ends}With(nonZipPath) throws an exception, but should return false
sherman
parents:
43193
diff
changeset
|
614 |
} |
6699
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
615 |
} |
d8229570529d
6990846: Demo: NIO.2 filesystem provider for zip/jar archives
sherman
parents:
diff
changeset
|
616 |
} |