Snap for 11651058 from b4480edabfc896898ac3a4d89a3578d7567d0f7a to mainline-healthfitness-release

Change-Id: I2d43a91c258a617b2d7789d5aa4a1746dcac6a8d
diff --git a/tools/catbox-tradefed/Android.bp b/tools/catbox-tradefed/Android.bp
index c94cc9f..6c92af0 100644
--- a/tools/catbox-tradefed/Android.bp
+++ b/tools/catbox-tradefed/Android.bp
@@ -23,12 +23,11 @@
         "cts-tradefed-harness",
         "catbox-common",
         "catbox-preparer-lib",
-        "catbox-report-lib"
+        "catbox-report-lib",
     ],
     required: ["compatibility-host-util"],
 }
 
-
 tradefed_binary_host {
     name: "catbox-tradefed",
     java_resource_dirs: ["res"],
@@ -40,10 +39,10 @@
         "cts-tradefed-harness",
         "catbox-common",
         "catbox-preparer-lib",
-        "catbox-test-runner-lib"
+        "catbox-test-runner-lib",
     ],
     required: [
         "compatibility-host-util",
-        "catbox-report-lib"
+        "catbox-report-lib",
     ],
 }
diff --git a/tools/catbox-tradefed/res/config/catbox-performance-successive-boottime.xml b/tools/catbox-tradefed/res/config/catbox-performance-successive-boottime.xml
index 863b7e1..24be4be 100644
--- a/tools/catbox-tradefed/res/config/catbox-performance-successive-boottime.xml
+++ b/tools/catbox-tradefed/res/config/catbox-performance-successive-boottime.xml
@@ -15,50 +15,70 @@
   -->
 
 <configuration>
-    <!-- Extend existing boottime config-->
-    <include name="google/test/boottime-successive"/>
-
     <include name="catbox-performance-base" />
 
+    <target_preparer class="com.android.tradefed.targetprep.PushFilePreparer" />
+    <!-- Needed to set perfetto trace property before fastboot commands -->
+    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer" />
+    <target_preparer class="com.android.tradefed.targetprep.FastbootCommandPreparer" />
+    <!-- Needed multiple run command target preparer for running commands before/after install. -->
+    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer" />
+    <target_preparer class="com.android.tradefed.targetprep.TestAppInstallSetup" />
+    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer" />
+    <target_preparer class="com.android.tradefed.targetprep.InstrumentationPreparer" >
+        <option name="disable" value="true" />
+    </target_preparer>
+
+    <test class="com.android.tradefed.testtype.HostTest" >
+        <option name="class" value="android.boottime.BootTimeTest" />
+        <option name="set-option" value="boot-delay:20000" />
+        <option name="set-option"
+                value="successive-boot-prepare-cmd:am start -n com.google.android.car.setupwizard/.ExitActivity"/>
+        <option name="set-option"
+                value="successive-boot-prepare-cmd:setprop persist.aae.suw.disable_short_notice true"/>
+        <option name="set-option"
+                value="successive-boot-prepare-cmd:cmd car_service enable-feature car_evs_service"/>
+    </test>
+
+    <metrics_collector class="com.android.tradefed.device.metric.AtraceCollector"/>
+    <metrics_collector class="com.android.tradefed.device.metric.PerfettoPullerMetricCollector">
+        <option name="collect-on-run-ended-only" value="false" />
+    </metrics_collector>
+
+    <metric_post_processor class="com.android.tradefed.postprocessor.PerfettoGenericPostProcessor" />
+    <metric_post_processor class="com.android.tradefed.postprocessor.MetricFilePostProcessor">
+        <option name="aggregate-similar-tests" value="true" />
+    </metric_post_processor>
+    <metric_post_processor class="android.boottime.postprocessor.LogcatPostProcessor">
+        <option name="file-regex" value=".*Successive_reboots_logcat.*"/>
+        <!-- For custom boot time metrics -->
+        <option name="boot-time-pattern" key="boot_to_ble_on"
+                value="BluetoothAdapterService: updateAdapterState\(\) \- Broadcasting state BLE_ON"/>
+        <option name="boot-time-pattern" key="boot_to_carlauncher_fully_drawn"
+                value="Fully drawn com.android.car.carlauncher/.CarLauncher"/>
+        <option name="boot-time-pattern" key="boot_to_first_user_unlocked"
+                value="CarServiceHelper: Time to unlock 1st user"/>
+        <option name="boot-time-pattern" key="boot_to_maps_displayed"
+                value="Displayed com.google.android.apps.maps"/>
+        <option name="boot-time-pattern" key="boot_to_settings_fallbackhome_displayed"
+                value="Displayed com.android.car.settings/.FallbackHome"/>
+        <option name="boot-time-pattern" key="boot_to_user0_unlocked"
+                value="SystemServerTiming: SystemUserUnlock took to complete"/>
+        <option name="boot-time-pattern" key="boot_to_user10_unlocked"
+                value="SystemServerTiming: User10Unlock took to complete"/>
+        <option name="boot-time-pattern" key="boot_to_gmscore_started_experimental"
+                value="ActivityManager: Start proc \d+:com.google.android.gms/u0"/>
+        <option name="boot-time-pattern" key="boot_to_car_evs_service_started"
+                value="CAR.InitTiming: CarEvsService took to complete"/>s
+    </metric_post_processor>
+    <metric_post_processor class="android.boottime.postprocessor.DmesgPostProcessor">
+        <option name="file-regex" value=".*Successive_reboots_dmesg.*"/>
+    </metric_post_processor>
+
     <!-- Artificially disabling tests in CompatibilityTestSuite -->
     <!-- See com.android.tradefed.testtype.suite.CompatibilityTestSuite:loadTests() -->
     <option name="compatibility:reverse-exclude-filters" value="true" />
 
-    <option name="boot-delay" value="20000"/>
-    <option name="boot-count" value="20"/>
-    <option name="dmesg-info" value="true"/>
-    <option name="granular-boot-info" value="true"/>
-    <option name="online-timeout" value="120000"/>
-    <option name="successive-boot" value="true"/>
-
-    <!-- Prepare commands -->
-    <option name="successive-boot-prepare-cmd"
-            value="am start -n com.google.android.car.setupwizard/.ExitActivity"/>
-    <option name="successive-boot-prepare-cmd"
-            value="setprop persist.aae.suw.disable_short_notice true"/>
-    <option name="successive-boot-prepare-cmd"
-            value="cmd car_service enable-feature car_evs_service"/>
-
-    <!-- For custom boot time metrics -->
-    <option name="boot-time-pattern" key="boot_to_ble_on"
-            value="BluetoothAdapterService: updateAdapterState\(\) \- Broadcasting state BLE_ON"/>
-    <option name="boot-time-pattern" key="boot_to_carlauncher_fully_drawn"
-            value="Fully drawn com.android.car.carlauncher/.CarLauncher"/>
-    <option name="boot-time-pattern" key="boot_to_first_user_unlocked"
-            value="CarServiceHelper: Time to unlock 1st user"/>
-    <option name="boot-time-pattern" key="boot_to_maps_displayed"
-            value="Displayed com.google.android.apps.maps"/>
-    <option name="boot-time-pattern" key="boot_to_settings_fallbackhome_displayed"
-            value="Displayed com.android.car.settings/.FallbackHome"/>
-    <option name="boot-time-pattern" key="boot_to_user0_unlocked"
-            value="SystemServerTiming: SystemUserUnlock took to complete"/>
-    <option name="boot-time-pattern" key="boot_to_user10_unlocked"
-            value="SystemServerTiming: User10Unlock took to complete"/>
-    <option name="boot-time-pattern" key="boot_to_gmscore_started_experimental"
-            value="ActivityManager: Start proc \d+:com.google.android.gms/u0"/>
-    <option name="boot-time-pattern" key="boot_to_car_evs_service_started"
-            value="CAR.InitTiming: CarEvsService took to complete"/>
-
     <option name="report-log-name" value="CatboxPerformanceTests" />
     <option name="report-test-name-mapping" key="BootTimeTest.BootTimeTest#SuccessiveBootTest" value="boot_time_test" />
     <option name="report-all-metrics" value="false" />