private ImmutableList<BundleModuleVariantGenerator> getVariantGenerators() { return ImmutableList.of( new NativeLibsCompressionVariantGenerator(apkGenerationConfiguration), new DexCompressionVariantGenerator(apkGenerationConfiguration)); }
@Test public void variantsWithNativeLibs_nativeLibsOptimizationDisabled() throws Exception { NativeLibsCompressionVariantGenerator nativeLibsCompressionVariantGenerator = new NativeLibsCompressionVariantGenerator(ApkGenerationConfiguration.getDefaultInstance()); ImmutableCollection<VariantTargeting> splits = nativeLibsCompressionVariantGenerator.generate( createSingleLibraryModule("testModule", "x86", "lib/x86/libnoname.so")); assertThat(splits).isEmpty(); }
@Test public void variantsWithNativeLibs() throws Exception { NativeLibsCompressionVariantGenerator nativeLibsCompressionVariantGenerator = new NativeLibsCompressionVariantGenerator( ApkGenerationConfiguration.builder() .setEnableNativeLibraryCompressionSplitter(true) .build()); ImmutableCollection<VariantTargeting> splits = nativeLibsCompressionVariantGenerator.generate( createSingleLibraryModule("testModule", "x86", "lib/x86/libnoname.so")); assertThat(splits).containsExactly(variantMinSdkTargeting(ANDROID_M_API_VERSION)); }
@Test public void variantsWithNativeLibs_instantModule() throws Exception { NativeLibsCompressionVariantGenerator nativeLibsCompressionVariantGenerator = new NativeLibsCompressionVariantGenerator( ApkGenerationConfiguration.builder() .setForInstantAppVariants(true) .setEnableNativeLibraryCompressionSplitter(true) .build()); ImmutableCollection<VariantTargeting> splits = nativeLibsCompressionVariantGenerator.generate( createSingleLibraryModule("testModule", "x86", "lib/x86/libnoname.so")); assertThat(splits).isEmpty(); }
@Test public void variantsWithoutNativeLibs() throws Exception { NativeLibsCompressionVariantGenerator nativeLibsCompressionVariantGenerator = new NativeLibsCompressionVariantGenerator( ApkGenerationConfiguration.builder() .setEnableNativeLibraryCompressionSplitter(true) .build()); BundleModule bundleModule = new BundleModuleBuilder("testModule") .addFile("assets/leftover.txt") .addFile("dex/classes.dex") .setManifest(androidManifest("com.test.app")) .build(); ImmutableCollection<VariantTargeting> splits = nativeLibsCompressionVariantGenerator.generate(bundleModule); assertThat(splits).isEmpty(); }