diff --git a/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java b/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java index 2eb7cf413fc..43cc3864d83 100644 --- a/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java +++ b/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java @@ -105,7 +105,7 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle return super.handlePreferenceTreeClick(preference); } Intent intent = new Intent(); - intent.setComponent(currentFragmentName); + intent.setComponent(replacingActivity); mContext.startActivity(intent); return true; } @@ -189,4 +189,4 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle String pkgName = lastPkgIndex > 0 ? classPath.substring(0, lastPkgIndex) : ""; return new ComponentName(pkgName, split[classNameIndex]); } -} +} \ No newline at end of file diff --git a/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java index 3201d82c12a..f99455c8686 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java @@ -32,6 +32,7 @@ import static org.mockito.Mockito.when; import android.app.Activity; import android.content.ComponentName; import android.content.Context; +import android.content.Intent; import androidx.preference.Preference; @@ -42,6 +43,7 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.ArgumentCaptor; import org.mockito.MockitoAnnotations; import org.robolectric.Robolectric; import org.robolectric.RobolectricTestRunner; @@ -53,6 +55,7 @@ public class TopLevelBatteryPreferenceControllerTest { private FakeFeatureFactory mFeatureFactory; private TopLevelBatteryPreferenceController mController; private BatterySettingsFeatureProvider mBatterySettingsFeatureProvider; + private ArgumentCaptor mIntentArgumentCaptor; @Before public void setUp() { @@ -107,8 +110,9 @@ public class TopLevelBatteryPreferenceControllerTest { ComponentName newPathName = mController.convertClassPathToComponentName(newFragmentPath); when(mBatterySettingsFeatureProvider.getReplacingActivity(any())).thenReturn( newPathName); - doNothing().when(mContext).startActivity(any()); + doNothing().when(mContext).startActivity(mIntentArgumentCaptor.capture()); + assertThat(mIntentArgumentCaptor.getValue().getComponent()).isEqualTo(newPathName); assertThat(mController.handlePreferenceTreeClick(preference)).isTrue(); } @@ -177,4 +181,4 @@ public class TopLevelBatteryPreferenceControllerTest { assertThat(mController.getSummary()) .isEqualTo(mContext.getString(R.string.battery_missing_message)); } -} +} \ No newline at end of file