Merge "Fix vts packaging when moving installed path to testcase for all tests."
diff --git a/harnesses/tradefed/src/com/android/tradefed/targetprep/VtsDeviceInfoCollector.java b/harnesses/tradefed/src/com/android/tradefed/targetprep/VtsDeviceInfoCollector.java
index c7405c6..cad9eab 100644
--- a/harnesses/tradefed/src/com/android/tradefed/targetprep/VtsDeviceInfoCollector.java
+++ b/harnesses/tradefed/src/com/android/tradefed/targetprep/VtsDeviceInfoCollector.java
@@ -54,7 +54,14 @@
         BUILD_KEYS.put("cts:build_model", "ro.product.vendor.model");
         BUILD_KEYS.put("cts:build_type", "ro.build.type");
         BUILD_KEYS.put("cts:build_tags", "ro.build.tags");
+        /**
+         * build_fingerprint is used for certification
+         */
         BUILD_KEYS.put("cts:build_fingerprint", "ro.odm.build.fingerprint");
+        /**
+         * Unaltered is for retry.
+         */
+        BUILD_KEYS.put("cts:build_fingerprint_unaltered", "ro.build.fingerprint");
         BUILD_KEYS.put("cts:build_abi", "ro.product.cpu.abi");
         BUILD_KEYS.put("cts:build_abi2", "ro.product.cpu.abi2");
         BUILD_KEYS.put("cts:build_abis", "ro.product.cpu.abilist");
diff --git a/testcases/host/verify_boot_header/VtsFirmwareBootHeaderVerification.py b/testcases/host/verify_boot_header/VtsFirmwareBootHeaderVerification.py
index e7204b7..d823cca 100644
--- a/testcases/host/verify_boot_header/VtsFirmwareBootHeaderVerification.py
+++ b/testcases/host/verify_boot_header/VtsFirmwareBootHeaderVerification.py
@@ -47,6 +47,7 @@
         self.shell = self.dut.shell
         self.adb = self.dut.adb
         self.temp_dir = tempfile.mkdtemp()
+        self.launch_api_level = self.dut.getLaunchApiLevel()
         logging.info("Create %s", self.temp_dir)
         self.slot_suffix = self.dut.getProp(PROPERTY_SLOT_SUFFIX)
         if self.slot_suffix is None:
@@ -76,9 +77,14 @@
                 image_file.read(8)  # read boot magic
                 host_image_header_version = unpack("10I",
                                                    image_file.read(10 * 4))[8]
-                asserts.assertEqual(
-                    host_image_header_version, 1,
-                    "Device does not have boot image of version 1")
+                if (self.launch_api_level > api.PLATFORM_API_LEVEL_P):
+                    asserts.assertTrue(
+                        host_image_header_version >= 2,
+                        "Device must atleast have a boot image of version 2")
+                else:
+                    asserts.assertTrue(
+                        host_image_header_version >= 1,
+                        "Device must atleast have a boot image of version 1")
                 image_file.seek(BOOT_HEADER_DTBO_SIZE_OFFSET)
                 recovery_dtbo_size = unpack("I", image_file.read(4))[0]
                 image_file.read(8)  # ignore recovery dtbo load address
@@ -88,6 +94,10 @@
                         "recovery partition for non-A/B devices must contain the recovery DTBO"
                     )
                 boot_header_size = unpack("I", image_file.read(4))[0]
+                if (host_image_header_version > 1):
+                    dtb_size = unpack("I", image_file.read(4))[0]
+                    asserts.assertNotEqual(dtb_size, 0, "Boot/recovery image must contain DTB")
+                    image_file.read(8)  # ignore DTB physical load address
                 expected_header_size = image_file.tell()
                 asserts.assertEqual(
                     boot_header_size, expected_header_size,
diff --git a/tools/vts-tradefed/res/config/retry.xml b/tools/vts-tradefed/res/config/retry.xml
deleted file mode 100644
index e7e4ec4..0000000
--- a/tools/vts-tradefed/res/config/retry.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2019 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-<configuration description="Runs a retry of a previous VTS session.">
-    <object type="previous_loader" class="com.android.compatibility.common.tradefed.result.suite.PreviousResultLoader">
-        <option name="fingerprint-property" value="ro.vendor.build.fingerprint" />
-    </object>
-    <test class="com.android.tradefed.testtype.suite.retry.RetryRescheduler" />
-
-    <logger class="com.android.tradefed.log.FileLogger">
-        <option name="log-level-display" value="WARN" />
-    </logger>
-</configuration>
-