### Question:
BundleStringFilter { public AppBundle filter() throws IOException { TimeClock timeClock = new TimeClock(); File unusedStrFile = new File(unusedStrPath); Map<BundleModuleName, BundleModule> obfuscatedModules = new HashMap<>(); if (unusedStrFile.exists()) { unUsedNameSet.addAll(Files.readAllLines(Paths.get(unusedStrPath))); System.out.println("无用字符串 : " + unUsedNameSet.size()); } if (!unUsedNameSet.isEmpty() || !languageWhiteList.isEmpty()) { for (Map.Entry<BundleModuleName, BundleModule> entry : rawAppBundle.getModules().entrySet()) { BundleModule bundleModule = entry.getValue(); BundleModuleName bundleModuleName = entry.getKey(); BundleModule obfuscatedModule = obfuscateBundleModule(bundleModule); obfuscatedModules.put(bundleModuleName, obfuscatedModule); } } else { return rawAppBundle; } AppBundle appBundle = rawAppBundle.toBuilder() .setModules(ImmutableMap.copyOf(obfuscatedModules)) .build(); System.out.println(String.format( "filtering strings done, coast %s\n", timeClock.getCoast() )); return appBundle; } BundleStringFilter(Path bundlePath, AppBundle rawAppBundle, String unusedStrPath, Set<String> languageWhiteList); AppBundle filter();  }### Answer:
@Test public void test() throws IOException { Path bundlePath = loadResourceFile("demo/demo.aab").toPath(); AppBundleAnalyzer analyzer = new AppBundleAnalyzer(bundlePath); AppBundle appBundle = analyzer.analyze(); BundleStringFilter filter = new BundleStringFilter(loadResourceFile("demo/demo.aab").toPath(), appBundle, loadResourceFile("demo/unused.txt").toPath().toString(), new HashSet<>()); AppBundle filteredAppBundle = filter.filter(); assert filteredAppBundle != null; }