Mock on-battery state correctly on batteryless devices.

The setup command `dumpsys battery unplug` fakes only the
"(AC|USB|Wireless) powered" battery service state.

In addition to it, for simulating the on-battery status on batteryless devices,
the "status" field of the service needs to be altered. The field is "unknown"
on Android P batteryless devices, and com.android.internal.os.BatteryStatsImpl
never considers itself as on-battery under the state.

Bug: 126827395
Test: -t com.android.server.cts.BatteryStatsValidationTest on Chromebase
Test: -t com.android.server.cts.BatteryStatsValidationTest on Pixel 3
Change-Id: I089539dd2e0111c57597404d4f72ce25bd20e30f
diff --git a/hostsidetests/incident/src/com/android/server/cts/BatteryStatsValidationTest.java b/hostsidetests/incident/src/com/android/server/cts/BatteryStatsValidationTest.java
index 9234387..bbdcb08 100644
--- a/hostsidetests/incident/src/com/android/server/cts/BatteryStatsValidationTest.java
+++ b/hostsidetests/incident/src/com/android/server/cts/BatteryStatsValidationTest.java
@@ -72,6 +72,9 @@
     public static final String KEY_REQUEST_CODE = "request_code";
     public static final String BG_VS_FG_TAG = "BatteryStatsBgVsFgActions";
 
+    // Constants from BatteryMangager.
+    public static final int BATTERY_STATUS_DISCHARGING = 3;
+
     @Override
     protected void setUp() throws Exception {
         super.setUp();
@@ -109,11 +112,13 @@
 
     protected void batteryOnScreenOn() throws Exception {
         getDevice().executeShellCommand("dumpsys battery unplug");
+        getDevice().executeShellCommand("dumpsys battery set status " + BATTERY_STATUS_DISCHARGING);
         getDevice().executeShellCommand("dumpsys batterystats disable pretend-screen-off");
     }
 
     protected void batteryOnScreenOff() throws Exception {
         getDevice().executeShellCommand("dumpsys battery unplug");
+        getDevice().executeShellCommand("dumpsys battery set status " + BATTERY_STATUS_DISCHARGING);
         getDevice().executeShellCommand("dumpsys batterystats enable pretend-screen-off");
     }