Record important battery usage event into SharedPreference for dump()
Fix: 268300677 Test: presubmit Change-Id: If03106c265b984bc2608528bdf45386973e3a14f
This commit is contained in:
@@ -57,6 +57,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
mFakeFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||
mBatteryUsageBroadcastReceiver = new BatteryUsageBroadcastReceiver();
|
||||
doReturn(mPackageManager).when(mContext).getPackageManager();
|
||||
DatabaseUtils.getSharedPreferences(mContext).edit().clear().apply();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -77,6 +78,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(Intent.ACTION_BATTERY_LEVEL_CHANGED));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(Intent.ACTION_BATTERY_LEVEL_CHANGED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -94,6 +96,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(Intent.ACTION_BATTERY_LEVEL_CHANGED));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(Intent.ACTION_BATTERY_LEVEL_CHANGED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -110,6 +113,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(Intent.ACTION_BATTERY_LEVEL_CHANGED));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(Intent.ACTION_BATTERY_LEVEL_CHANGED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -126,6 +130,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(Intent.ACTION_BATTERY_LEVEL_CHANGED));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isTrue();
|
||||
assertSharedPreferences(Intent.ACTION_BATTERY_LEVEL_CHANGED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -139,6 +144,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -156,6 +162,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -172,6 +179,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isFalse();
|
||||
assertSharedPreferences(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -188,6 +196,7 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING));
|
||||
|
||||
assertThat(mBatteryUsageBroadcastReceiver.mFetchBatteryUsageData).isTrue();
|
||||
assertSharedPreferences(BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -202,6 +211,8 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_CLEAR_BATTERY_CACHE_DATA));
|
||||
|
||||
assertThat(BatteryDiffEntry.sValidForRestriction).isEmpty();
|
||||
assertSharedPreferences(
|
||||
BatteryUsageBroadcastReceiver.ACTION_CLEAR_BATTERY_CACHE_DATA);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -216,6 +227,8 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
new Intent(BatteryUsageBroadcastReceiver.ACTION_CLEAR_BATTERY_CACHE_DATA));
|
||||
|
||||
assertThat(BatteryDiffEntry.sValidForRestriction).isNotEmpty();
|
||||
assertSharedPreferences(
|
||||
BatteryUsageBroadcastReceiver.ACTION_CLEAR_BATTERY_CACHE_DATA);
|
||||
}
|
||||
|
||||
private static Intent getBatteryIntent(int level, int status) {
|
||||
@@ -225,4 +238,9 @@ public final class BatteryUsageBroadcastReceiverTest {
|
||||
intent.putExtra(BatteryManager.EXTRA_STATUS, status);
|
||||
return intent;
|
||||
}
|
||||
|
||||
private void assertSharedPreferences(String preferenceKey) {
|
||||
assertThat(DatabaseUtils.getSharedPreferences(mContext).contains(preferenceKey))
|
||||
.isTrue();
|
||||
}
|
||||
}
|
||||
|
@@ -46,6 +46,8 @@ import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -73,6 +75,7 @@ public final class DatabaseUtilsTest {
|
||||
doReturn(mMockContentResolver).when(mContext).getContentResolver();
|
||||
doReturn(mPackageManager).when(mMockContext).getPackageManager();
|
||||
doReturn(mPackageManager).when(mContext).getPackageManager();
|
||||
DatabaseUtils.getSharedPreferences(mContext).edit().clear().apply();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -396,6 +399,38 @@ public final class DatabaseUtilsTest {
|
||||
assertThat(batteryHistMap).isEmpty();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void recordDateTime_writeDataIntoSharedPreferences() {
|
||||
final String preferenceKey = "test_preference_key";
|
||||
DatabaseUtils.recordDateTime(mContext, preferenceKey);
|
||||
|
||||
assertThat(DatabaseUtils.getSharedPreferences(mContext).contains(preferenceKey))
|
||||
.isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dump_dumpExpectedData() {
|
||||
DatabaseUtils.recordDateTime(mContext,
|
||||
Intent.ACTION_BATTERY_LEVEL_CHANGED);
|
||||
DatabaseUtils.recordDateTime(mContext,
|
||||
BatteryUsageBroadcastReceiver.ACTION_BATTERY_UNPLUGGING);
|
||||
DatabaseUtils.recordDateTime(mContext,
|
||||
DatabaseUtils.KEY_LAST_LOAD_FULL_CHARGE_TIME);
|
||||
DatabaseUtils.recordDateTime(mContext,
|
||||
DatabaseUtils.KEY_LAST_UPLOAD_FULL_CHARGE_TIME);
|
||||
final StringWriter stringWriter = new StringWriter();
|
||||
final PrintWriter printWriter = new PrintWriter(stringWriter);
|
||||
|
||||
DatabaseUtils.dump(mContext, printWriter);
|
||||
|
||||
String dumpContent = stringWriter.toString();
|
||||
assertThat(dumpContent.contains("BatteryLevelChanged")).isTrue();
|
||||
assertThat(dumpContent.contains("BatteryUnplugging")).isTrue();
|
||||
assertThat(dumpContent.contains("ClearBatteryCacheData")).isTrue();
|
||||
assertThat(dumpContent.contains("LastLoadFullChargeTime")).isTrue();
|
||||
assertThat(dumpContent.contains("LastUploadFullChargeTime")).isTrue();
|
||||
}
|
||||
|
||||
private static void verifyBatteryEntryContentValues(
|
||||
double consumedPower, ContentValues values) {
|
||||
final BatteryInformation batteryInformation =
|
||||
|
Reference in New Issue
Block a user