@Test public void variantMultiAbiTargeting_byMultipleAbisAndAlternatives() { VariantTargeting expectedTargeting = VariantTargeting.newBuilder().setMultiAbiTargeting(MULTI_ABI_WITH_ALTERNATIVES).build(); assertThat( TargetingUtils.variantMultiAbiTargeting( ImmutableSet.of(ImmutableSet.of(X86), ImmutableSet.of(ARMEABI_V7A, ARM64_V8A)), ImmutableSet.of(ImmutableSet.of(X86_64)))) .ignoringRepeatedFieldOrder() .isEqualTo(expectedTargeting); }
@Test public void variantMultiAbiTargetingFromAllTergeting() { ImmutableSet<ImmutableSet<AbiAlias>> allTargeting = ImmutableSet.of( ImmutableSet.of(ARMEABI_V7A), ImmutableSet.of(ARM64_V8A), ImmutableSet.of(X86)); VariantTargeting expectedTargeting = VariantTargeting.newBuilder().setMultiAbiTargeting(SINGLE_ABI_WITH_ALTERNATIVES).build(); assertThat( TargetingUtils.variantMultiAbiTargetingFromAllTargeting( ImmutableSet.of(X86), allTargeting)) .ignoringRepeatedFieldOrder() .isEqualTo(expectedTargeting); }
@Test public void variantMultiAbiTargeting_byAbiAliasAndAlternativesSet() { VariantTargeting expectedTargeting = VariantTargeting.newBuilder().setMultiAbiTargeting(SINGLE_ABI_WITH_ALTERNATIVES).build(); assertThat( TargetingUtils.variantMultiAbiTargeting(X86, ImmutableSet.of(ARMEABI_V7A, ARM64_V8A))) .isEqualTo(expectedTargeting); }
private static VariantTargeting standaloneApkVariantTargeting(ModuleSplit standaloneApk) { ApkTargeting apkTargeting = standaloneApk.getApkTargeting(); VariantTargeting.Builder variantTargeting = VariantTargeting.newBuilder(); if (apkTargeting.hasAbiTargeting()) { variantTargeting.setAbiTargeting(apkTargeting.getAbiTargeting()); } if (apkTargeting.hasScreenDensityTargeting()) { variantTargeting.setScreenDensityTargeting(apkTargeting.getScreenDensityTargeting()); } if (apkTargeting.hasMultiAbiTargeting()) { variantTargeting.setMultiAbiTargeting(apkTargeting.getMultiAbiTargeting()); } variantTargeting.setSdkVersionTargeting(sdkVersionTargeting(standaloneApk)); return variantTargeting.build(); }
/** Builds variant targeting, of multi-Abi targeting only. */ public static VariantTargeting variantMultiAbiTargeting(MultiAbiTargeting multiAbiTargeting) { return VariantTargeting.newBuilder().setMultiAbiTargeting(multiAbiTargeting).build(); }
@Test public void variantMultiAbiTargeting_byMultiAbiTargeting() { VariantTargeting expectedTargeting = VariantTargeting.newBuilder().setMultiAbiTargeting(MULTI_ABI_WITH_ALTERNATIVES).build(); assertThat(TargetingUtils.variantMultiAbiTargeting(MULTI_ABI_WITH_ALTERNATIVES)) .ignoringRepeatedFieldOrder() .isEqualTo(expectedTargeting); }