diff options
Diffstat (limited to 'tests/testapk/src/java/com/android/microdroid/test')
-rw-r--r-- | tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java | 5 | ||||
-rw-r--r-- | tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java | 15 |
2 files changed, 10 insertions, 10 deletions
diff --git a/tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java b/tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java index c50e59ab..3b755a00 100644 --- a/tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java +++ b/tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java @@ -20,14 +20,12 @@ import static android.content.pm.PackageManager.FEATURE_VIRTUALIZATION_FRAMEWORK import static com.google.common.truth.Truth.assertWithMessage; import static com.google.common.truth.TruthJUnit.assume; -import android.os.SystemProperties; import android.system.virtualmachine.VirtualMachineManager; import com.android.compatibility.common.util.CddTest; import com.android.compatibility.common.util.VsrTest; import com.android.microdroid.test.device.MicrodroidDeviceTestBase; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -65,9 +63,8 @@ public class MicrodroidCapabilitiesTest extends MicrodroidDeviceTestBase { @Test @VsrTest(requirements = "VSR-7.1-001.005") public void avfIsRequired() { - int vendorApiLevel = SystemProperties.getInt("ro.vendor.api_level", 0); assume().withMessage("Requirement doesn't apply due to vendor API level") - .that(vendorApiLevel) + .that(getVendorApiLevel()) .isAtLeast(202404); boolean avfSupported = getContext().getPackageManager().hasSystemFeature(FEATURE_VIRTUALIZATION_FRAMEWORK); diff --git a/tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java b/tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java index 63080724..4ffef3c1 100644 --- a/tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java +++ b/tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java @@ -1285,17 +1285,20 @@ public class MicrodroidTests extends MicrodroidDeviceTestBase { assertThat(dataItems.size()).isEqualTo(1); assertThat(dataItems.get(0).getMajorType()).isEqualTo(MajorType.ARRAY); List<DataItem> rootArrayItems = ((Array) dataItems.get(0)).getDataItems(); - assertThat(rootArrayItems.size()).isAtLeast(2); // Root public key and one certificate + int diceChainSize = rootArrayItems.size(); + assertThat(diceChainSize).isAtLeast(2); // Root public key and one certificate if (mProtectedVm) { if (isFeatureEnabled(VirtualMachineManager.FEATURE_DICE_CHANGES)) { - // When a true DICE chain is created, we expect the root public key, at least one - // entry for the boot before pvmfw, then pvmfw, vm_entry (Microdroid kernel) and - // Microdroid payload entries. - assertThat(rootArrayItems.size()).isAtLeast(5); + // We expect the root public key, at least one entry for the boot before pvmfw, + // then pvmfw, vm_entry (Microdroid kernel) and Microdroid payload entries. + // Before Android V we did not require that vendor code contain any DICE entries + // preceding pvmfw, so the minimum is one less. + int minDiceChainSize = getVendorApiLevel() >= 202404 ? 5 : 4; + assertThat(diceChainSize).isAtLeast(minDiceChainSize); } else { // pvmfw truncates the DICE chain it gets, so we expect exactly entries for // public key, vm_entry (Microdroid kernel) and Microdroid payload. - assertThat(rootArrayItems.size()).isEqualTo(3); + assertThat(diceChainSize).isEqualTo(3); } } } |