aboutsummaryrefslogtreecommitdiff
path: root/tests/testapk/src/java/com/android/microdroid/test
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testapk/src/java/com/android/microdroid/test')
-rw-r--r--tests/testapk/src/java/com/android/microdroid/test/MicrodroidCapabilitiesTest.java5
-rw-r--r--tests/testapk/src/java/com/android/microdroid/test/MicrodroidTests.java15
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);
}
}
}