Never store battery stats for cache
In PowerUsageBase, it will store battery stats if it has a configuration change, which will make BatteryStatsLoaderHelper never get the correct battery stats because it uses Bundle.EMPTY as the bundle message. This cl: 1. Remove the store action even though it is configuration change. 2. Always use null to get battery stats 3. Always start a battery status check in register() Bug: 63658232 Test: RunSettingsRoboTests Change-Id: Ifbf970c63378ed66dddcdae4d952b7d1fd84216a
This commit is contained in:
@@ -32,7 +32,11 @@ import org.robolectric.RuntimeEnvironment;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Matchers.any;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
@@ -52,7 +56,7 @@ public class BatteryBroadcastReceiverTest {
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mContext = RuntimeEnvironment.application;
|
||||
mContext = spy(RuntimeEnvironment.application);
|
||||
|
||||
mBatteryBroadcastReceiver = new BatteryBroadcastReceiver(mContext);
|
||||
mBatteryBroadcastReceiver.mBatteryLevel = BATTERY_INIT_LEVEL;
|
||||
@@ -92,4 +96,17 @@ public class BatteryBroadcastReceiverTest {
|
||||
verify(mBatteryListener, never()).onBatteryChanged();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegister_updateBatteryStatus() {
|
||||
doReturn(mChargingIntent).when(mContext).registerReceiver(any(), any());
|
||||
|
||||
mBatteryBroadcastReceiver.register();
|
||||
|
||||
assertThat(mBatteryBroadcastReceiver.mBatteryLevel).isEqualTo(
|
||||
Utils.getBatteryPercentage(mChargingIntent));
|
||||
assertThat(mBatteryBroadcastReceiver.mBatteryStatus).isEqualTo(
|
||||
Utils.getBatteryStatus(mContext.getResources(), mChargingIntent));
|
||||
verify(mBatteryListener).onBatteryChanged();
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user