use of com.android.tools.build.bundletool.model.exceptions.InvalidBundleException in project bundletool by google.
the class AndroidManifestValidatorTest method conditionalModuleNonRemovable_throws.
@Test
public void conditionalModuleNonRemovable_throws() throws Exception {
ImmutableList<BundleModule> bundleModules = ImmutableList.of(new BundleModuleBuilder(BASE_MODULE_NAME).addFile("assets/textures#tcf_astc/level1.assets").setManifest(androidManifest("com.test")).build(), new BundleModuleBuilder("asset_module").addFile("assets/other_textures#tcf_astc/astc_file.assets").setManifest(androidManifestForAssetModule("com.test.app", withInstallTimeRemovableElement(false), withMinSdkVersion(24), withFeatureCondition("android.feature"))).build());
InvalidBundleException exception = assertThrows(InvalidBundleException.class, () -> new AndroidManifestValidator().validateAllModules(bundleModules));
assertThat(exception).hasMessageThat().contains("Conditional modules cannot be set to non-removable.");
}
use of com.android.tools.build.bundletool.model.exceptions.InvalidBundleException in project bundletool by google.
the class AndroidManifestValidatorTest method withMultipleDistinctSplitIds_throws.
@Test
public void withMultipleDistinctSplitIds_throws() throws Exception {
BundleModule module = new BundleModuleBuilder(FEATURE_MODULE_NAME).setManifest(androidManifestForFeature(PKG_NAME, withSplitId(FEATURE_MODULE_NAME), withSecondSplitId("modulesplitname2"))).build();
InvalidBundleException e = assertThrows(InvalidBundleException.class, () -> new AndroidManifestValidator().validateModule(module));
assertThat(e).hasMessageThat().contains("attribute 'split' cannot be declared more than once");
}
use of com.android.tools.build.bundletool.model.exceptions.InvalidBundleException in project bundletool by google.
the class AndroidManifestValidatorTest method assetModuleWithConditionalTargeting_throws.
@Test
public void assetModuleWithConditionalTargeting_throws() throws Exception {
BundleModule module = new BundleModuleBuilder("assetmodule").setManifest(androidManifestForAssetModule(PKG_NAME, withFeatureCondition("camera"))).build();
InvalidBundleException exception = assertThrows(InvalidBundleException.class, () -> new AndroidManifestValidator().validateModule(module));
assertThat(exception).hasMessageThat().matches("Conditional targeting is not allowed in asset packs, but found in 'assetmodule'.");
}
use of com.android.tools.build.bundletool.model.exceptions.InvalidBundleException in project bundletool by google.
the class AndroidManifestValidatorTest method withNegativeMinSdk_throws.
@Test
public void withNegativeMinSdk_throws() throws Exception {
BundleModule module = baseModule(withMinSdkVersion(-1));
InvalidBundleException e = assertThrows(InvalidBundleException.class, () -> new AndroidManifestValidator().validateModule(module));
assertThat(e).hasMessageThat().isEqualTo("minSdkVersion must be nonnegative, found: (-1).");
}
use of com.android.tools.build.bundletool.model.exceptions.InvalidBundleException in project bundletool by google.
the class AndroidManifestValidatorTest method withHighTargetSandboxVersionCode_throws.
@Test
public void withHighTargetSandboxVersionCode_throws() throws Exception {
BundleModule module = baseModule(withTargetSandboxVersion(3));
InvalidBundleException e = assertThrows(InvalidBundleException.class, () -> new AndroidManifestValidator().validateAllModules(ImmutableList.of(module)));
assertThat(e).hasMessageThat().contains("cannot have a value greater than 2, but found 3");
}
Aggregations