Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d76f5b82 authored by YK Hung's avatar YK Hung Committed by Android (Google) Code Review
Browse files

Merge "Fix post-comment in ag/27593647 to improve the readability." into main

parents 28f51a93 00507a47
Loading
Loading
Loading
Loading
+9 −8
Original line number Diff line number Diff line
@@ -58,19 +58,19 @@ object AppOptModeSharedPreferencesUtils {
            uids,
            packageNames,
            optimizationModes,
            expirationTimes
            expirationTimes,
        ) { uid: Int, packageName: String ->
            BatteryOptimizeUtils(context, uid, packageName)
        }

    /** Resets the app optimization mode event data since the query timestamp. */
    @JvmStatic
    fun resetExpiredAppOptModeBeforeTimestamp(context: Context, queryTimestamp: Long) =
    fun resetExpiredAppOptModeBeforeTimestamp(context: Context, queryTimestampMs: Long) =
        synchronized(appOptimizationModeLock) {
            val eventsMap = getAppOptModeEventsMap(context)
            val expirationUids = ArrayList<Int>(eventsMap.size)
            for ((uid, event) in eventsMap) {
                if (event.expirationTime > queryTimestamp) {
                if (event.expirationTime > queryTimestampMs) {
                    continue
                }
                updateBatteryOptimizationMode(
@@ -98,7 +98,7 @@ object AppOptModeSharedPreferencesUtils {
        packageNames: List<String>,
        optimizationModes: List<Int>,
        expirationTimes: LongArray,
        getBatteryOptimizeUtils: (Int, String) -> BatteryOptimizeUtils
        getBatteryOptimizeUtils: (Int, String) -> BatteryOptimizeUtils,
    ) =
        synchronized(appOptimizationModeLock) {
            val eventsMap = getAppOptModeEventsMap(context)
@@ -114,7 +114,7 @@ object AppOptModeSharedPreferencesUtils {
                        packageName,
                        optimizationMode,
                        Action.EXTERNAL_UPDATE,
                        getBatteryOptimizeUtils(uid, packageName)
                        getBatteryOptimizeUtils(uid, packageName),
                    )
                if (originalOptMode == BatteryOptimizeUtils.MODE_UNKNOWN) {
                    continue
@@ -151,7 +151,8 @@ object AppOptModeSharedPreferencesUtils {
        packageName: String,
        optimizationMode: Int,
        action: Action,
        batteryOptimizeUtils: BatteryOptimizeUtils = BatteryOptimizeUtils(context, uid, packageName)
        batteryOptimizeUtils: BatteryOptimizeUtils =
            BatteryOptimizeUtils(context, uid, packageName),
    ): Int {
        if (!batteryOptimizeUtils.isOptimizeModeMutable) {
            Log.w(TAG, "Fail to update immutable optimization mode for: $packageName")
@@ -190,7 +191,7 @@ object AppOptModeSharedPreferencesUtils {

    private fun updateSharedPreferences(
        context: Context,
        eventsMap: Map<Int, AppOptimizationModeEvent>
        eventsMap: Map<Int, AppOptimizationModeEvent>,
    ) {
        val sharedPreferences = getSharedPreferences(context)
        sharedPreferences.edit().run {
@@ -216,7 +217,7 @@ object AppOptModeSharedPreferencesUtils {
    }

    private fun deserializeAppOptimizationModeEvent(
        encodedProtoString: String
        encodedProtoString: String,
    ): AppOptimizationModeEvent {
        return BatteryUtils.parseProtoFromString(encodedProtoString, defaultInstance)
    }
+41 −17
Original line number Diff line number Diff line
@@ -43,7 +43,7 @@ import org.robolectric.RobolectricTestRunner

@RunWith(RobolectricTestRunner::class)
class AppOptModeSharedPreferencesUtilsTest {
    @JvmField @Rule val mockitoRule: MockitoRule = MockitoJUnit.rule()
    @get:Rule val mockitoRule: MockitoRule = MockitoJUnit.rule()

    @Spy private var context: Context = ApplicationProvider.getApplicationContext()

@@ -62,36 +62,48 @@ class AppOptModeSharedPreferencesUtilsTest {

    @Test
    fun updateAppOptModeExpirationInternal_withExpirationTime_verifyData() {
        insertAppOptModeEventForTest(/* expirationTime= */ 1000L)
        insertAppOptModeEventForTest(expirationTime = 1000L)

        val events = AppOptModeSharedPreferencesUtils.getAllEvents(context)

        assertThat(events.size).isEqualTo(1)
        assertAppOptimizationModeEventInfo(events.get(0), UID, PACKAGE_NAME, MODE_OPTIMIZED, 1000L)
        assertThat(events).hasSize(1)
        assertAppOptimizationModeEventInfo(
            events[0],
            UID,
            PACKAGE_NAME,
            MODE_OPTIMIZED,
            expirationTime = 1000L
        )
    }

    @Test
    fun updateAppOptModeExpirationInternal_withoutExpirationTime_verifyEmptyList() {
        insertAppOptModeEventForTest(/* expirationTime= */ UNLIMITED_EXPIRE_TIME)
        insertAppOptModeEventForTest(expirationTime = UNLIMITED_EXPIRE_TIME)

        assertThat(AppOptModeSharedPreferencesUtils.getAllEvents(context)).isEmpty()
    }

    @Test
    fun deleteAppOptimizationModeEventByUid_uidNotContained_verifyData() {
        insertAppOptModeEventForTest(/* expirationTime= */ 1000L)
        assertThat(AppOptModeSharedPreferencesUtils.getAllEvents(context).size).isEqualTo(1)
        insertAppOptModeEventForTest(expirationTime = 1000L)
        assertThat(AppOptModeSharedPreferencesUtils.getAllEvents(context)).hasSize(1)

        AppOptModeSharedPreferencesUtils.deleteAppOptimizationModeEventByUid(context, UNSET_UID)
        val events = AppOptModeSharedPreferencesUtils.getAllEvents(context)

        assertThat(events.size).isEqualTo(1)
        assertAppOptimizationModeEventInfo(events.get(0), UID, PACKAGE_NAME, MODE_OPTIMIZED, 1000L)
        assertThat(events).hasSize(1)
        assertAppOptimizationModeEventInfo(
            events[0],
            UID,
            PACKAGE_NAME,
            MODE_OPTIMIZED,
            expirationTime = 1000L
        )
    }

    @Test
    fun deleteAppOptimizationModeEventByUid_uidExisting_verifyData() {
        insertAppOptModeEventForTest(/* expirationTime= */ 1000L)
        insertAppOptModeEventForTest(expirationTime = 1000L)

        AppOptModeSharedPreferencesUtils.deleteAppOptimizationModeEventByUid(context, UID)

@@ -100,20 +112,32 @@ class AppOptModeSharedPreferencesUtilsTest {

    @Test
    fun resetExpiredAppOptModeBeforeTimestamp_noExpiredData_verifyData() {
        insertAppOptModeEventForTest(/* expirationTime= */ 1000L)
        insertAppOptModeEventForTest(expirationTime = 1000L)

        AppOptModeSharedPreferencesUtils.resetExpiredAppOptModeBeforeTimestamp(context, 999L)
        AppOptModeSharedPreferencesUtils.resetExpiredAppOptModeBeforeTimestamp(
            context,
            queryTimestampMs = 999L
        )
        val events = AppOptModeSharedPreferencesUtils.getAllEvents(context)

        assertThat(events.size).isEqualTo(1)
        assertAppOptimizationModeEventInfo(events.get(0), UID, PACKAGE_NAME, MODE_OPTIMIZED, 1000L)
        assertThat(events).hasSize(1)
        assertAppOptimizationModeEventInfo(
            events[0],
            UID,
            PACKAGE_NAME,
            MODE_OPTIMIZED,
            expirationTime = 1000L
        )
    }

    @Test
    fun resetExpiredAppOptModeBeforeTimestamp_hasExpiredData_verifyEmptyList() {
        insertAppOptModeEventForTest(/* expirationTime= */ 1000L)
        insertAppOptModeEventForTest(expirationTime = 1000L)

        AppOptModeSharedPreferencesUtils.resetExpiredAppOptModeBeforeTimestamp(context, 1001L)
        AppOptModeSharedPreferencesUtils.resetExpiredAppOptModeBeforeTimestamp(
            context,
            queryTimestampMs = 1001L
        )

        assertThat(AppOptModeSharedPreferencesUtils.getAllEvents(context)).isEmpty()
    }
@@ -185,7 +209,7 @@ class AppOptModeSharedPreferencesUtilsTest {
            mutableListOf(UID),
            mutableListOf(PACKAGE_NAME),
            mutableListOf(MODE_OPTIMIZED),
            longArrayOf(expirationTime)
            longArrayOf(expirationTime),
        ) { _: Int, _: String ->
            testBatteryOptimizeUtils
        }