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

Commit fcd80ade authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Update BatterySettingsFeatureProvider interface" into udc-qpr-dev

parents 542ef9e5 2a9b9cfd
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ public class BatteryFirstUseDatePreferenceController extends BasePreferenceContr

    @Override
    public int getAvailabilityStatus() {
        return mBatterySettingsFeatureProvider.isFirstUseDateAvailable(getFirstUseDate())
        return mBatterySettingsFeatureProvider.isFirstUseDateAvailable(mContext, getFirstUseDate())
                ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
    }

+2 −1
Original line number Diff line number Diff line
@@ -45,7 +45,8 @@ public class BatteryManufactureDatePreferenceController extends BasePreferenceCo

    @Override
    public int getAvailabilityStatus() {
        return mBatterySettingsFeatureProvider.isManufactureDateAvailable(getManufactureDate())
        return mBatterySettingsFeatureProvider.isManufactureDateAvailable(mContext,
                getManufactureDate())
                ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
    }

+4 −2
Original line number Diff line number Diff line
@@ -16,12 +16,14 @@

package com.android.settings.fuelgauge;

import android.content.Context;

/** Feature provider for battery settings usage. */
public interface BatterySettingsFeatureProvider {

    /** Returns true if manufacture date should be shown */
    boolean isManufactureDateAvailable(long manufactureDateMs);
    boolean isManufactureDateAvailable(Context context, long manufactureDateMs);

    /** Returns true if first use date should be shown */
    boolean isFirstUseDateAvailable(long firstUseDateMs);
    boolean isFirstUseDateAvailable(Context context, long firstUseDateMs);
}
+4 −2
Original line number Diff line number Diff line
@@ -16,16 +16,18 @@

package com.android.settings.fuelgauge;

import android.content.Context;

/** Feature provider implementation for battery settings usage. */
public class BatterySettingsFeatureProviderImpl implements BatterySettingsFeatureProvider {

    @Override
    public boolean isManufactureDateAvailable(long manufactureDateMs) {
    public boolean isManufactureDateAvailable(Context context, long manufactureDateMs) {
        return false;
    }

    @Override
    public boolean isFirstUseDateAvailable(long firstUseDateMs) {
    public boolean isFirstUseDateAvailable(Context context, long firstUseDateMs) {
        return false;
    }
}
+9 −8
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_U
import static com.google.common.truth.Truth.assertThat;

import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;

@@ -60,24 +61,24 @@ public class BatteryFirstUseDatePreferenceControllerTest {

    @Test
    public void getAvailabilityStatus_dateAvailable_returnAvailable() {
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(anyLong()))
                .thenReturn(true);
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(eq(mContext),
                anyLong())).thenReturn(true);

        assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
    }

    @Test
    public void getAvailabilityStatus_dateUnavailable_returnNotAvailable() {
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(anyLong()))
                .thenReturn(false);
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(eq(mContext),
                anyLong())).thenReturn(false);

        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
    }

    @Test
    public void getSummary_available_returnExpectedDate() {
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(anyLong()))
                .thenReturn(true);
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(eq(mContext),
                anyLong())).thenReturn(true);
        mShadowBatteryManager.setLongProperty(BatteryManager.BATTERY_PROPERTY_FIRST_USAGE_DATE,
                1669680000L);

@@ -88,8 +89,8 @@ public class BatteryFirstUseDatePreferenceControllerTest {

    @Test
    public void getSummary_unavailable_returnNull() {
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(anyLong()))
                .thenReturn(false);
        when(mFactory.batterySettingsFeatureProvider.isFirstUseDateAvailable(eq(mContext),
                anyLong())).thenReturn(false);

        assertThat(mController.getSummary()).isNull();
    }
Loading