60 // test various combinations of directories and jar files, intended to |
60 // test various combinations of directories and jar files, intended to |
61 // cover all sources of URIs within JavacFileManager's support classes |
61 // cover all sources of URIs within JavacFileManager's support classes |
62 |
62 |
63 test(createFileManager(), createDir("dir", entries), "p", entries.length); |
63 test(createFileManager(), createDir("dir", entries), "p", entries.length); |
64 test(createFileManager(), createDir("a b/dir", entries), "p", entries.length); |
64 test(createFileManager(), createDir("a b/dir", entries), "p", entries.length); |
65 |
65 test(createFileManager(), createJar("jar", entries), "p", entries.length); |
66 for (boolean useOptimizedZip: new boolean[] { false, true }) { |
66 test(createFileManager(), createJar("jar jar", entries), "p", entries.length); |
67 test(createFileManager(useOptimizedZip), createJar("jar", entries), "p", entries.length); |
|
68 test(createFileManager(useOptimizedZip), createJar("jar jar", entries), "p", entries.length); |
|
69 } |
|
70 |
67 |
71 // Verify that we hit the files we intended |
68 // Verify that we hit the files we intended |
72 checkCoverage("classes", foundClasses, |
69 checkCoverage("classes", foundClasses, |
73 "RegularFileObject", "ZipFileIndexFileObject", "ZipFileObject"); |
70 "DirectoryFileObject", "JarFileObject"); |
74 |
71 |
75 // Verify that we hit the jar files we intended |
72 // Verify that we hit the jar files we intended |
76 checkCoverage("jar files", foundJars, "jar", "jar jar"); |
73 checkCoverage("jar files", foundJars, "jar", "jar jar"); |
77 } |
74 } |
78 |
75 |
151 throw new Exception("expected " + label + " not used: " + e); |
148 throw new Exception("expected " + label + " not used: " + e); |
152 } |
149 } |
153 } |
150 } |
154 |
151 |
155 JavacFileManager createFileManager() { |
152 JavacFileManager createFileManager() { |
156 return createFileManager(false, false); |
153 return createFileManager(false); |
157 } |
154 } |
158 |
155 |
159 JavacFileManager createFileManager(boolean useOptimizedZip) { |
156 JavacFileManager createFileManager(boolean useSymbolFile) { |
160 return createFileManager(useOptimizedZip, false); |
|
161 } |
|
162 |
|
163 JavacFileManager createFileManager(boolean useOptimizedZip, boolean useSymbolFile) { |
|
164 Context ctx = new Context(); |
157 Context ctx = new Context(); |
165 Options options = Options.instance(ctx); |
158 Options options = Options.instance(ctx); |
166 options.put("useOptimizedZip", Boolean.toString(useOptimizedZip)); |
|
167 if (!useSymbolFile) { |
159 if (!useSymbolFile) { |
168 options.put("ignore.symbol.file", "true"); |
160 options.put("ignore.symbol.file", "true"); |
169 } |
161 } |
170 return new JavacFileManager(ctx, false, null); |
162 return new JavacFileManager(ctx, false, null); |
171 } |
163 } |