Loading src/com/android/settings/fuelgauge/PowerUsageSummary.java +9 −7 Original line number Diff line number Diff line Loading @@ -231,13 +231,7 @@ public class PowerUsageSummary extends PowerUsageBase implements initFeatureProvider(); mBatteryLayoutPref = (LayoutPreference) findPreference(KEY_BATTERY_HEADER); View header = mBatteryLayoutPref.findViewById(R.id.summary1); // Unfortunately setting a long click listener on a means it will no longer pass the regular // click event to the parent, so we have to register a regular click listener as well. if (mPowerFeatureProvider.isEstimateDebugEnabled()) { header.setOnLongClickListener(this); header.setOnClickListener(this); } mAppListGroup = (PreferenceGroup) findPreference(KEY_APP_LIST); mScreenUsagePref = (PowerGaugePreference) findPreference(KEY_SCREEN_USAGE); mLastFullChargePref = (PowerGaugePreference) findPreference( Loading Loading @@ -772,6 +766,14 @@ public class PowerUsageSummary extends PowerUsageBase implements void restartBatteryInfoLoader() { getLoaderManager().restartLoader(BATTERY_INFO_LOADER, Bundle.EMPTY, mBatteryInfoLoaderCallbacks); if (mPowerFeatureProvider.isEstimateDebugEnabled()) { // Unfortunately setting a long click listener on a view means it will no // longer pass the regular click event to the parent, so we have to register // a regular click listener as well. View header = mBatteryLayoutPref.findViewById(R.id.summary1); header.setOnLongClickListener(this); header.setOnClickListener(this); } } private static List<BatterySipper> getFakeStats() { Loading tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -27,8 +27,10 @@ import static org.mockito.Matchers.anyLong; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; Loading Loading @@ -73,6 +75,7 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.Robolectric; Loading Loading @@ -184,6 +187,7 @@ public class PowerUsageSummaryTest { mBatteryMeterView = new BatteryMeterView(mRealContext); mBatteryMeterView.mDrawable = new BatteryMeterView.BatteryMeterDrawable(mRealContext, 0); doNothing().when(mFragment).restartBatteryStatsLoader(); doReturn(mock(LoaderManager.class)).when(mFragment).getLoaderManager(); when(mFragment.getActivity()).thenReturn(mSettingsActivity); when(mAdditionalBatteryInfoMenu.getItemId()) Loading Loading @@ -546,6 +550,24 @@ public class PowerUsageSummaryTest { assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isFalse(); } @Test public void testDebugMode() { doReturn(true).when(mFeatureFactory.powerUsageFeatureProvider).isEstimateDebugEnabled(); mFragment.restartBatteryInfoLoader(); ArgumentCaptor<View.OnLongClickListener> listener = ArgumentCaptor.forClass( View.OnLongClickListener.class); verify(mSummary1).setOnLongClickListener(listener.capture()); // Calling the listener should disable it. listener.getValue().onLongClick(mSummary1); verify(mSummary1).setOnLongClickListener(null); // Restarting the loader should reset the listener. mFragment.restartBatteryInfoLoader(); verify(mSummary1, times(2)).setOnLongClickListener(any(View.OnLongClickListener.class)); } public static class TestFragment extends PowerUsageSummary { private Context mContext; Loading Loading
src/com/android/settings/fuelgauge/PowerUsageSummary.java +9 −7 Original line number Diff line number Diff line Loading @@ -231,13 +231,7 @@ public class PowerUsageSummary extends PowerUsageBase implements initFeatureProvider(); mBatteryLayoutPref = (LayoutPreference) findPreference(KEY_BATTERY_HEADER); View header = mBatteryLayoutPref.findViewById(R.id.summary1); // Unfortunately setting a long click listener on a means it will no longer pass the regular // click event to the parent, so we have to register a regular click listener as well. if (mPowerFeatureProvider.isEstimateDebugEnabled()) { header.setOnLongClickListener(this); header.setOnClickListener(this); } mAppListGroup = (PreferenceGroup) findPreference(KEY_APP_LIST); mScreenUsagePref = (PowerGaugePreference) findPreference(KEY_SCREEN_USAGE); mLastFullChargePref = (PowerGaugePreference) findPreference( Loading Loading @@ -772,6 +766,14 @@ public class PowerUsageSummary extends PowerUsageBase implements void restartBatteryInfoLoader() { getLoaderManager().restartLoader(BATTERY_INFO_LOADER, Bundle.EMPTY, mBatteryInfoLoaderCallbacks); if (mPowerFeatureProvider.isEstimateDebugEnabled()) { // Unfortunately setting a long click listener on a view means it will no // longer pass the regular click event to the parent, so we have to register // a regular click listener as well. View header = mBatteryLayoutPref.findViewById(R.id.summary1); header.setOnLongClickListener(this); header.setOnClickListener(this); } } private static List<BatterySipper> getFakeStats() { Loading
tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -27,8 +27,10 @@ import static org.mockito.Matchers.anyLong; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; Loading Loading @@ -73,6 +75,7 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.Robolectric; Loading Loading @@ -184,6 +187,7 @@ public class PowerUsageSummaryTest { mBatteryMeterView = new BatteryMeterView(mRealContext); mBatteryMeterView.mDrawable = new BatteryMeterView.BatteryMeterDrawable(mRealContext, 0); doNothing().when(mFragment).restartBatteryStatsLoader(); doReturn(mock(LoaderManager.class)).when(mFragment).getLoaderManager(); when(mFragment.getActivity()).thenReturn(mSettingsActivity); when(mAdditionalBatteryInfoMenu.getItemId()) Loading Loading @@ -546,6 +550,24 @@ public class PowerUsageSummaryTest { assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isFalse(); } @Test public void testDebugMode() { doReturn(true).when(mFeatureFactory.powerUsageFeatureProvider).isEstimateDebugEnabled(); mFragment.restartBatteryInfoLoader(); ArgumentCaptor<View.OnLongClickListener> listener = ArgumentCaptor.forClass( View.OnLongClickListener.class); verify(mSummary1).setOnLongClickListener(listener.capture()); // Calling the listener should disable it. listener.getValue().onLongClick(mSummary1); verify(mSummary1).setOnLongClickListener(null); // Restarting the loader should reset the listener. mFragment.restartBatteryInfoLoader(); verify(mSummary1, times(2)).setOnLongClickListener(any(View.OnLongClickListener.class)); } public static class TestFragment extends PowerUsageSummary { private Context mContext; Loading