Merge "Convert SettingsLib Lifecycle to Flatfoot"

This commit is contained in:
TreeHugger Robot
2017-11-14 21:21:42 +00:00
committed by Android (Google) Code Review
45 changed files with 257 additions and 143 deletions

View File

@@ -16,7 +16,10 @@
package com.android.settings.accounts;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.when;
@@ -71,6 +74,9 @@ public class AccountHeaderPreferenceControllerTest {
private AccountHeaderPreferenceController mController;
private Lifecycle mLifecycle =
new Lifecycle(() -> AccountHeaderPreferenceControllerTest.this.mLifecycle);
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
@@ -78,32 +84,32 @@ public class AccountHeaderPreferenceControllerTest {
mHeaderPreference = new LayoutPreference(
RuntimeEnvironment.application, R.layout.settings_entity_header);
doReturn(mContext).when(mActivity).getApplicationContext();
mLifecycle = new Lifecycle(() -> mLifecycle);
}
@Test
public void isAvailable_noArgs_shouldReturnNull() {
mController = new AccountHeaderPreferenceController(RuntimeEnvironment.application,
new Lifecycle(), mActivity, mFragment, null /* args */);
mLifecycle, mActivity, mFragment, null /* args */);
assertThat(mController.isAvailable()).isFalse();
}
@Test
public void onResume_shouldDisplayAccountInEntityHeader() {
final Lifecycle lifecycle = new Lifecycle();
final Account account = new Account("name1@abc.com", "com.abc");
Bundle args = new Bundle();
args.putParcelable(AccountDetailDashboardFragment.KEY_ACCOUNT, account);
args.putParcelable(AccountDetailDashboardFragment.KEY_USER_HANDLE, UserHandle.CURRENT);
mController = new AccountHeaderPreferenceController(RuntimeEnvironment.application,
lifecycle, mActivity, mFragment, args);
mLifecycle, mActivity, mFragment, args);
assertThat(mController.isAvailable()).isTrue();
when(mScreen.findPreference(anyString())).thenReturn(mHeaderPreference);
mController.displayPreference(mScreen);
lifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
final CharSequence label =
((TextView) mHeaderPreference.findViewById(R.id.entity_header_title)).getText();

View File

@@ -16,7 +16,10 @@
package com.android.settings.applications.assist;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
@@ -60,7 +63,7 @@ public class AssistContextPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
when(mScreen.findPreference(anyString())).thenReturn(mPreference);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mContext = RuntimeEnvironment.application;
mController = new AssistContextPreferenceController(mContext, mLifecycle);
ReflectionHelpers.setField(mController, "mSettingObserver", mObserver);
@@ -88,7 +91,7 @@ public class AssistContextPreferenceControllerTest {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.ASSIST_STRUCTURE_ENABLED, 1);
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mObserver).register(any(ContentResolver.class), eq(true));
verify(mPreference).setChecked(true);
}

View File

@@ -16,6 +16,18 @@
package com.android.settings.applications.assist;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
@@ -23,8 +35,8 @@ import android.provider.Settings;
import android.support.v7.preference.PreferenceScreen;
import android.support.v7.preference.TwoStatePreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowSecureSettings;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -38,15 +50,6 @@ import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AssistFlashScreenPreferenceControllerTest {
@@ -67,7 +70,7 @@ public class AssistFlashScreenPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
when(mScreen.findPreference(anyString())).thenReturn(mPreference);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mContext = RuntimeEnvironment.application;
mController = spy(new AssistFlashScreenPreferenceController(mContext, mLifecycle));
mLifecycle.addObserver(mController);
@@ -116,7 +119,7 @@ public class AssistFlashScreenPreferenceControllerTest {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.ASSIST_DISCLOSURE_ENABLED, 1);
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mObserver).register(any(ContentResolver.class), eq(true));
verify(mPreference).setChecked(true);

View File

@@ -22,7 +22,9 @@ import static com.android.settings.applications.manageapplications.ManageApplica
.LIST_TYPE_MAIN;
import static com.android.settings.applications.manageapplications.ManageApplications
.LIST_TYPE_NOTIFICATION;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.eq;
@@ -52,7 +54,6 @@ import com.android.settings.testutils.shadow.SettingsShadowResources.SettingsSha
import com.android.settings.testutils.shadow.ShadowEventLogWriter;
import com.android.settings.widget.LoadingViewController;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
@@ -100,7 +101,6 @@ public class ManageApplicationsTest {
when(mState.getBackgroundLooper()).thenReturn(mBgLooper);
mFragment = new ManageApplications();
ReflectionHelpers.setField(mFragment, "mLifecycle", new Lifecycle());
}
@Test

View File

@@ -67,7 +67,7 @@ public class BluetoothDetailsControllerTestBase {
when(mFragment.getContext()).thenReturn(mContext);
when(mFragment.getPreferenceManager()).thenReturn(mPreferenceManager);
when(mFragment.getPreferenceScreen()).thenReturn(mScreen);
mLifecycle = spy(new Lifecycle());
mLifecycle = spy(new Lifecycle(() -> mLifecycle));
mBluetoothManager = new BluetoothManager(mContext);
mBluetoothAdapter = mBluetoothManager.getAdapter();
}

View File

@@ -16,7 +16,11 @@
package com.android.settings.dashboard.suggestions;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -56,7 +60,7 @@ public class SuggestionControllerMixinTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
FakeFeatureFactory.setupForTest(mContext);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getApplicationContext()).thenReturn(mContext);
}
@@ -69,10 +73,10 @@ public class SuggestionControllerMixinTest {
public void goThroughLifecycle_onStartStop_shouldStartStopController() {
mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(ShadowSuggestionController.sStartCalled).isTrue();
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(ShadowSuggestionController.sStopCalled).isTrue();
}

View File

@@ -19,11 +19,7 @@ package com.android.settings.development;
import static com.android.settings.development.AbstractBluetoothA2dpPreferenceController
.STREAMING_LABEL_ID;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
@@ -72,7 +68,7 @@ public class AbstractBluetoothA2dpPreferenceControllerTest {
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new AbstractBluetoothA2dpPreferenceControllerImpl(mContext, mLifecycle,
mBluetoothA2dpConfigStore));
doReturn(mBluetoothCodecConfig).when(mController).getCodecConfig();

View File

@@ -61,13 +61,15 @@ public class BluetoothAudioBitsPerSamplePreferenceControllerTest {
private String[] mListValues;
private Context mContext;
private BluetoothAudioBitsPerSamplePreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new BluetoothAudioBitsPerSamplePreferenceController(mContext,
new Lifecycle(), mBluetoothA2dpConfigStore));
mLifecycle, mBluetoothA2dpConfigStore));
mListValues = mController.getListValues();
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen);

View File

@@ -60,13 +60,15 @@ public class BluetoothAudioChannelModePreferenceControllerTest {
private String[] mListValues;
private Context mContext;
private BluetoothAudioChannelModePreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new BluetoothAudioChannelModePreferenceController(mContext,
new Lifecycle(), mBluetoothA2dpConfigStore));
mLifecycle, mBluetoothA2dpConfigStore));
mListValues = mController.getListValues();
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen);

View File

@@ -65,12 +65,14 @@ public class BluetoothAudioCodecPreferenceControllerTest {
private String[] mListValues;
private Context mContext;
private BluetoothAudioCodecPreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mController = spy(new BluetoothAudioCodecPreferenceController(mContext, new Lifecycle(),
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new BluetoothAudioCodecPreferenceController(mContext, mLifecycle,
mBluetoothA2dpConfigStore));
mListValues = mController.getListValues();
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);

View File

@@ -60,13 +60,15 @@ public class BluetoothAudioQualityPreferenceControllerTest {
private String[] mListValues;
private Context mContext;
private BluetoothAudioQualityPreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new BluetoothAudioQualityPreferenceController(mContext,
new Lifecycle(), mBluetoothA2dpConfigStore));
mLifecycle, mBluetoothA2dpConfigStore));
mListValues = mController.getListValues();
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen);

View File

@@ -68,7 +68,7 @@ public class BluetoothAudioSampleRatePreferenceControllerTest {
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new BluetoothAudioSampleRatePreferenceController(mContext, mLifecycle,
mBluetoothA2dpConfigStore));
mListValues = mController.getListValues();

View File

@@ -16,7 +16,11 @@
package com.android.settings.development;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
import com.android.settings.TestConfig;
@@ -55,7 +59,7 @@ public class DevelopmentSwitchBarControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mSwitchBar = new SwitchBar(RuntimeEnvironment.application);
}
@@ -72,10 +76,10 @@ public class DevelopmentSwitchBarControllerTest {
final ArrayList<SwitchBar.OnSwitchChangeListener> listeners =
ReflectionHelpers.getField(mSwitchBar, "mSwitchChangeListeners");
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(listeners).doesNotContain(mSettings);
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(listeners).doesNotContain(mSettings);
}
@@ -87,10 +91,10 @@ public class DevelopmentSwitchBarControllerTest {
final ArrayList<SwitchBar.OnSwitchChangeListener> listeners =
ReflectionHelpers.getField(mSwitchBar, "mSwitchChangeListeners");
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(listeners).doesNotContain(mNewSettings);
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(listeners).doesNotContain(mNewSettings);
}
@@ -102,10 +106,10 @@ public class DevelopmentSwitchBarControllerTest {
final ArrayList<SwitchBar.OnSwitchChangeListener> listeners =
ReflectionHelpers.getField(mSwitchBar, "mSwitchChangeListeners");
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(listeners).contains(mSettings);
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(listeners).doesNotContain(mSettings);
}
@@ -118,10 +122,10 @@ public class DevelopmentSwitchBarControllerTest {
final ArrayList<SwitchBar.OnSwitchChangeListener> listeners =
ReflectionHelpers.getField(mSwitchBar, "mSwitchChangeListeners");
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(listeners).contains(mNewSettings);
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(listeners).doesNotContain(mNewSettings);
}

View File

@@ -21,14 +21,12 @@ import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import com.android.settingslib.R;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.After;
@@ -39,7 +37,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH,
@@ -56,12 +53,14 @@ public class LogPersistPreferenceControllerV2Test {
private Context mContext;
private LogPersistPreferenceControllerV2 mController;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mController = new LogPersistPreferenceControllerV2(mContext, mFragment, new Lifecycle());
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new LogPersistPreferenceControllerV2(mContext, mFragment, mLifecycle);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
SystemProperties.set("ro.debuggable", "1");
mController.displayPreference(mScreen);

View File

@@ -40,7 +40,7 @@ import org.robolectric.annotation.Config;
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class LogpersistPreferenceControllerTest {
private Lifecycle mLifecycle = new Lifecycle();
private Lifecycle mLifecycle;
@Mock
private ListPreference mListPreference;
@@ -50,6 +50,7 @@ public class LogpersistPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController
= new LogpersistPreferenceController(RuntimeEnvironment.application, mLifecycle);
}

View File

@@ -16,6 +16,9 @@
package com.android.settings.development;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
@@ -58,7 +61,7 @@ public class PictureColorModePreferenceControllerTest {
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new PictureColorModePreferenceController(mContext, mLifecycle);
when(mPreferenceScreen.findPreference(mController.getPreferenceKey())).thenReturn(
mPreference);
@@ -123,14 +126,15 @@ public class PictureColorModePreferenceControllerTest {
@Test
public void onResume_shouldStartListening() {
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mPreference).startListening();
}
@Test
public void onPause_shouldStopListening() {
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_RESUME);
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mPreference).stopListening();
}

View File

@@ -16,6 +16,9 @@
package com.android.settings.development;
import static android.arch.lifecycle.Lifecycle.Event.ON_CREATE;
import static android.arch.lifecycle.Lifecycle.Event.ON_DESTROY;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyString;
@@ -74,7 +77,7 @@ public class SelectUsbConfigPreferenceControllerTest {
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mContext = spy(RuntimeEnvironment.application);
doReturn(mUsbManager).when(mContext).getSystemService(Context.USB_SERVICE);
mValues = mContext.getResources().getStringArray(R.array.usb_configuration_values);
@@ -148,6 +151,7 @@ public class SelectUsbConfigPreferenceControllerTest {
@Test
public void onCreate_shouldRegisterReceiver() {
mLifecycle.onCreate(null /* bundle */);
mLifecycle.handleLifecycleEvent(ON_CREATE);
verify(mContext).registerReceiver(any(), any());
}
@@ -155,7 +159,8 @@ public class SelectUsbConfigPreferenceControllerTest {
@Test
public void onDestroy_shouldUnregisterReceiver() {
doNothing().when(mContext).unregisterReceiver(any());
mLifecycle.onDestroy();
mLifecycle.handleLifecycleEvent(ON_CREATE);
mLifecycle.handleLifecycleEvent(ON_DESTROY);
verify(mContext).unregisterReceiver(any());
}

View File

@@ -16,7 +16,10 @@
package com.android.settings.development.featureflags;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -50,7 +53,7 @@ public class FeatureFlagPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new FeatureFlagsPreferenceController(mContext, mLifecycle);
when(mScreen.getContext()).thenReturn(mContext);
mController.displayPreference(mScreen);
@@ -64,7 +67,7 @@ public class FeatureFlagPreferenceControllerTest {
@Test
public void onStart_shouldRefreshFeatureFlags() {
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
verify(mScreen).removeAll();
verify(mScreen).addPreference(any(FeatureFlagPreference.class));

View File

@@ -16,11 +16,16 @@
package com.android.settings.deviceinfo;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
import static com.android.settings.deviceinfo.BatteryInfoPreferenceController
.BATTERY_INFO_RECEIVER_INTENT_FILTER;
import static com.android.settings.deviceinfo.BatteryInfoPreferenceController.KEY_BATTERY_LEVEL;
import static com.android.settings.deviceinfo.BatteryInfoPreferenceController.KEY_BATTERY_STATUS;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -62,7 +67,7 @@ public class BatteryInfoPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new BatteryInfoPreferenceController(mContext, mLifecycle);
mBatteryLevel = new Preference(mContext);
mBatteryStatus = new Preference(mContext);
@@ -80,8 +85,8 @@ public class BatteryInfoPreferenceControllerTest {
public void runThroughLifecycle_shouldRegisterUnregisterBatteryInfoReceiver() {
final Context context = mock(Context.class);
mController = new BatteryInfoPreferenceController(context, mLifecycle);
mLifecycle.onStart();
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_START);
mLifecycle.handleLifecycleEvent(ON_STOP);
verify(context).registerReceiver(mController.mBatteryInfoReceiver,
BATTERY_INFO_RECEIVER_INTENT_FILTER);

View File

@@ -84,7 +84,7 @@ public class BuildNumberPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mFactory = FakeFeatureFactory.setupForTest(mContext);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
mController = new BuildNumberPreferenceController(
mContext, mActivity, mFragment, mLifecycle);

View File

@@ -15,13 +15,17 @@
*/
package com.android.settings.deviceinfo;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.UserManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -32,9 +36,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class FirmwareVersionPreferenceControllerTest {
@@ -53,7 +54,7 @@ public class FirmwareVersionPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
when(mContext.getSystemService(Context.DEVICE_POLICY_SERVICE)).thenReturn(null);
mController = new FirmwareVersionPreferenceController(mContext, mLifecycle);

View File

@@ -91,14 +91,16 @@ public class SimStatusDialogControllerTest {
private SimStatusDialogController mController;
private Context mContext;
private Lifecycle mLifecycle;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
when(mDialog.getContext()).thenReturn(mContext);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(
new SimStatusDialogController(mDialog, new Lifecycle(), 0 /* phone id */));
new SimStatusDialogController(mDialog, mLifecycle, 0 /* phone id */));
doReturn(mServiceState).when(mController).getCurrentServiceState();
doReturn(0).when(mController).getDbm(any());
doReturn(0).when(mController).getAsuLevel(any());

View File

@@ -16,6 +16,12 @@
package com.android.settings.display;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.when;
import android.content.ContentResolver;
import android.content.Context;
import android.content.pm.PackageManager;
@@ -23,9 +29,9 @@ import android.os.UserHandle;
import android.provider.Settings;
import android.support.v14.preference.SwitchPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowSystemSettings;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -39,11 +45,6 @@ import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(
manifest = TestConfig.MANIFEST_PATH,
@@ -66,7 +67,7 @@ public class AutoRotatePreferenceControllerTest {
MockitoAnnotations.initMocks(this);
FakeFeatureFactory.setupForTest(mContext);
mContentResolver = RuntimeEnvironment.application.getContentResolver();
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mPreference = new SwitchPreference(RuntimeEnvironment.application);
when(mContext.getPackageManager()).thenReturn(mPackageManager);
when(mContext.getContentResolver()).thenReturn(mContentResolver);

View File

@@ -17,7 +17,10 @@
package com.android.settings.fuelgauge;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.eq;
@@ -90,7 +93,7 @@ public class BatteryHeaderPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mContext = spy(RuntimeEnvironment.application);
mBatteryMeterView = new BatteryMeterView(mContext);
mBatteryPercentText = new TextView(mContext);
@@ -170,7 +173,7 @@ public class BatteryHeaderPreferenceControllerTest {
.thenReturn(mEntityHeaderController);
mController.displayPreference(mPreferenceScreen);
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
verify(mEntityHeaderController).styleActionBar(mActivity);
}

View File

@@ -59,7 +59,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
import java.util.List;
@@ -210,7 +209,7 @@ public class LanguageAndInputSettingsTest {
}
@Override
protected Lifecycle getLifecycle() {
public Lifecycle getLifecycle() {
if (mLifecycle == null) {
return super.getLifecycle();
}

View File

@@ -66,13 +66,15 @@ public class LocationEnablerTest {
private Context mContext;
private LocationEnabler mEnabler;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
mEnabler = spy(new LocationEnabler(mContext, mListener, new Lifecycle()));
mLifecycle = new Lifecycle(() -> mLifecycle);
mEnabler = spy(new LocationEnabler(mContext, mListener, mLifecycle));
}
@Test

View File

@@ -68,13 +68,15 @@ public class LocationForWorkPreferenceControllerTest {
private Context mContext;
private LocationForWorkPreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
mController = spy(new LocationForWorkPreferenceController(mContext, new Lifecycle()));
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new LocationForWorkPreferenceController(mContext, mLifecycle));
mockManagedProfile();
ReflectionHelpers.setField(mController, "mLocationEnabler", mEnabler);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);

View File

@@ -26,6 +26,7 @@ import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
@@ -34,11 +35,17 @@ import org.robolectric.annotation.Config;
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O)
public class LocationModeBatterySavingPreferenceControllerTest {
private Lifecycle mLifecycle;
@Before
public void setUp() {
mLifecycle = new Lifecycle(() -> mLifecycle);
}
@Test
public void getLocationMode_shouldReturnModeBatterySaving() {
final LocationModeBatterySavingPreferenceController controller =
new LocationModeBatterySavingPreferenceController(mock(Context.class),
new Lifecycle());
new LocationModeBatterySavingPreferenceController(mock(Context.class), mLifecycle);
assertThat(controller.getLocationMode())
.isEqualTo(Settings.Secure.LOCATION_MODE_BATTERY_SAVING);

View File

@@ -26,6 +26,7 @@ import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
@@ -34,11 +35,17 @@ import org.robolectric.annotation.Config;
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O)
public class LocationModeHighAccuracyPreferenceControllerTest {
private Lifecycle mLifecycle;
@Before
public void setUp() {
mLifecycle = new Lifecycle(() -> mLifecycle);
}
@Test
public void getLocationMode_shouldReturnModeHighAccuracy() {
final LocationModeHighAccuracyPreferenceController controller =
new LocationModeHighAccuracyPreferenceController(mock(Context.class),
new Lifecycle());
new LocationModeHighAccuracyPreferenceController(mock(Context.class), mLifecycle);
assertThat(controller.getLocationMode())
.isEqualTo(Settings.Secure.LOCATION_MODE_HIGH_ACCURACY);

View File

@@ -59,13 +59,15 @@ public class LocationModePreferenceControllerTest {
private Context mContext;
private LocationModePreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
mController = new LocationModePreferenceController(mContext, mFragment, new Lifecycle());
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new LocationModePreferenceController(mContext, mFragment, mLifecycle);
when(mFragment.getActivity()).thenReturn(mActivity);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
}

View File

@@ -48,12 +48,14 @@ public class LocationModeRadioButtonPreferenceControllerTest {
private Context mContext;
private LocationModeRadioButtonPreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mController = new LocationModeRadioButtonPreferenceControllerTestable(mContext);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new LocationModeRadioButtonPreferenceControllerTestable(mContext, mLifecycle);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
}
@@ -116,8 +118,9 @@ public class LocationModeRadioButtonPreferenceControllerTest {
private class LocationModeRadioButtonPreferenceControllerTestable
extends LocationModeRadioButtonPreferenceController {
public LocationModeRadioButtonPreferenceControllerTestable(Context context) {
super(context, new Lifecycle());
public LocationModeRadioButtonPreferenceControllerTestable(Context context,
Lifecycle lifecycle) {
super(context, lifecycle);
}
@Override

View File

@@ -26,6 +26,7 @@ import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
@@ -34,11 +35,17 @@ import org.robolectric.annotation.Config;
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O)
public class LocationModeSensorsOnlyPreferenceControllerTest {
private Lifecycle mLifecycle;
@Before
public void setUp() {
mLifecycle = new Lifecycle(() -> mLifecycle);
}
@Test
public void getLocationMode_shouldReturnModeSensorsOnly() {
final LocationModeSensorsOnlyPreferenceController controller =
new LocationModeSensorsOnlyPreferenceController(mock(Context.class),
new Lifecycle());
new LocationModeSensorsOnlyPreferenceController(mock(Context.class), mLifecycle);
assertThat(controller.getLocationMode())
.isEqualTo(Settings.Secure.LOCATION_MODE_SENSORS_ONLY);

View File

@@ -15,7 +15,11 @@
*/
package com.android.settings.location;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.verify;
@@ -67,7 +71,7 @@ public class LocationPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = new LocationPreferenceController(mContext, mLifecycle);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
}
@@ -145,13 +149,14 @@ public class LocationPreferenceControllerTest {
@Test
public void onResume_shouldRegisterObserver() {
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mContext).registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class));
}
@Test
public void onPause_shouldUnregisterObserver() {
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_RESUME);
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
}

View File

@@ -62,13 +62,15 @@ public class LocationServicePreferenceControllerTest {
private Context mContext;
private LocationServicePreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new LocationServicePreferenceController(
mContext, mFragment, new Lifecycle(), mSettingsInjector));
mContext, mFragment, mLifecycle, mSettingsInjector));
final String key = mController.getPreferenceKey();
when(mScreen.findPreference(key)).thenReturn(mCategory);
when(mCategory.getKey()).thenReturn(key);

View File

@@ -54,14 +54,16 @@ public class LocationSwitchBarControllerTest {
private Context mContext;
private LocationSwitchBarController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
ReflectionHelpers.setField(mSwitchBar, "mSwitch", mSwitch);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new LocationSwitchBarController(
mContext, mSwitchBar, new Lifecycle()));
mContext, mSwitchBar, mLifecycle));
ReflectionHelpers.setField(mController, "mLocationEnabler", mEnabler);
}

View File

@@ -73,13 +73,15 @@ public class RecentLocationRequestPreferenceControllerTest {
private Context mContext;
private RecentLocationRequestPreferenceController mController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mLifecycle = new Lifecycle(() -> mLifecycle);
mController = spy(new RecentLocationRequestPreferenceController(
mContext, mFragment, new Lifecycle(), mRecentLocationApps));
mContext, mFragment, mLifecycle, mRecentLocationApps));
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mCategory);
final String key = mController.getPreferenceKey();
when(mCategory.getKey()).thenReturn(key);

View File

@@ -15,6 +15,9 @@
*/
package com.android.settings.network;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
@@ -69,7 +72,7 @@ public class MobileNetworkPreferenceControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(Context.TELEPHONY_SERVICE))
.thenReturn(mTelephonyManager);
}
@@ -104,11 +107,11 @@ public class MobileNetworkPreferenceControllerTest {
mLifecycle.addObserver(mController);
doReturn(true).when(mController).isAvailable();
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
PhoneStateListener.LISTEN_SERVICE_STATE);
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
PhoneStateListener.LISTEN_NONE);
}
@@ -125,7 +128,7 @@ public class MobileNetworkPreferenceControllerTest {
// Display pref and go through lifecycle to set up listener.
mController.displayPreference(mScreen);
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mController).onResume();
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
PhoneStateListener.LISTEN_SERVICE_STATE);

View File

@@ -17,6 +17,16 @@
package com.android.settings.network;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.IConnectivityManager;
@@ -25,8 +35,8 @@ import android.os.IBinder;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -37,13 +47,6 @@ import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowServiceManager;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class VpnPreferenceControllerTest {
@@ -74,7 +77,7 @@ public class VpnPreferenceControllerTest {
when(mScreen.findPreference(anyString())).thenReturn(mPreference);
mController = spy(new VpnPreferenceController(mContext));
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
mLifecycle.addObserver(mController);
}
@@ -91,11 +94,11 @@ public class VpnPreferenceControllerTest {
public void goThroughLifecycle_shouldRegisterUnregisterListener() {
doReturn(true).when(mController).isAvailable();
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mConnectivityManager).registerNetworkCallback(
any(NetworkRequest.class), any(ConnectivityManager.NetworkCallback.class));
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mConnectivityManager).unregisterNetworkCallback(
any(ConnectivityManager.NetworkCallback.class));
}

View File

@@ -46,16 +46,18 @@ public class RestrictedEncryptionPreferenceControllerTest {
private InstallCredentialsPreferenceController mInstallCredentialsPreferenceController;
private ResetCredentialsPreferenceController mResetCredentialsPreferenceController;
private UserCredentialsPreferenceController mUserCredentialsPreferenceController;
private Lifecycle mLifecycle;
@Before
public void setUp() {
mContext = RuntimeEnvironment.application;
mLifecycle = new Lifecycle(() -> mLifecycle);
mCredentialStoragePreferenceController =
new CredentialStoragePreferenceController(mContext);
mInstallCredentialsPreferenceController =
new InstallCredentialsPreferenceController(mContext);
mResetCredentialsPreferenceController =
new ResetCredentialsPreferenceController(mContext, new Lifecycle());
new ResetCredentialsPreferenceController(mContext, mLifecycle);
mUserCredentialsPreferenceController =
new UserCredentialsPreferenceController(mContext);
mUserManager = ShadowUserManager.getShadow();

View File

@@ -17,7 +17,11 @@
package com.android.settings.widget;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -31,7 +35,6 @@ import android.view.View;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import org.junit.Before;
import org.junit.Test;
@@ -40,9 +43,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@@ -62,7 +62,7 @@ public class ActionBarShadowControllerTest {
MockitoAnnotations.initMocks(this);
when(mActivity.getActionBar()).thenReturn(mActionBar);
mView = new View(RuntimeEnvironment.application);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
}
@Test
@@ -93,14 +93,13 @@ public class ActionBarShadowControllerTest {
public void attachToRecyclerView_lifecycleChange_shouldAttachDetach() {
ActionBarShadowController.attachToRecyclerView(mActivity, mLifecycle, mRecyclerView);
List<LifecycleObserver> observers = ReflectionHelpers.getField(mLifecycle, "mObservers");
assertThat(observers).hasSize(1);
verify(mRecyclerView).addOnScrollListener(any());
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_START);
mLifecycle.handleLifecycleEvent(ON_STOP);
verify(mRecyclerView).removeOnScrollListener(any());
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
verify(mRecyclerView, times(2)).addOnScrollListener(any());
}

View File

@@ -16,6 +16,16 @@
package com.android.settings.wifi;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.IntentFilter;
@@ -23,8 +33,8 @@ import android.net.wifi.WifiManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -35,12 +45,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class WifiInfoPreferenceControllerTest {
@@ -62,7 +66,7 @@ public class WifiInfoPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(WifiManager.class))
.thenReturn(mWifiManager);
when(mScreen.findPreference(anyString()))
@@ -83,10 +87,10 @@ public class WifiInfoPreferenceControllerTest {
@Test
public void runThroughLifecycle_shouldInstallListenerOnResume() {
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mContext).registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class));
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
}

View File

@@ -15,7 +15,11 @@
*/
package com.android.settings.wifi;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.times;
@@ -31,8 +35,8 @@ import android.net.wifi.WifiManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -66,7 +70,7 @@ public class WpsPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(WifiManager.class))
.thenReturn(mWifiManager);
when(mScreen.findPreference(anyString()))
@@ -83,12 +87,13 @@ public class WpsPreferenceControllerTest {
@Test
public void testOnResume_shouldRegisterListener() {
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mContext).registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class));
}
@Test
public void testOnPause_shouldUnregisterListener() {
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_RESUME);
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
}

View File

@@ -16,6 +16,7 @@
package com.android.settings.wifi.details;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
@@ -203,7 +204,7 @@ public class WifiDetailPreferenceControllerTest {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mockAccessPoint.getConfig()).thenReturn(mockWifiConfig);
when(mockAccessPoint.getLevel()).thenReturn(LEVEL);

View File

@@ -15,7 +15,11 @@
*/
package com.android.settings.wifi.p2p;
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.times;
@@ -30,8 +34,8 @@ import android.net.wifi.WifiManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -61,7 +65,7 @@ public class WifiP2PPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
when(mContext.getSystemService(WifiManager.class))
.thenReturn(mWifiManager);
when(mScreen.findPreference(anyString()))
@@ -76,13 +80,14 @@ public class WifiP2PPreferenceControllerTest {
@Test
public void testOnResume_shouldRegisterListener() {
mLifecycle.onResume();
mLifecycle.handleLifecycleEvent(ON_RESUME);
verify(mContext).registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class));
}
@Test
public void testOnPause_shouldUnregisterListener() {
mLifecycle.onPause();
mLifecycle.handleLifecycleEvent(ON_RESUME);
mLifecycle.handleLifecycleEvent(ON_PAUSE);
verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
}

View File

@@ -16,7 +16,11 @@
package com.android.settings.wifi.tether;
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
@@ -84,7 +88,7 @@ public class WifiTetherPreferenceControllerTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mLifecycle = new Lifecycle();
mLifecycle = new Lifecycle(() -> mLifecycle);
FakeFeatureFactory.setupForTest(mFeatureFactoryContext);
mPreference = new MasterSwitchPreference(RuntimeEnvironment.application);
when(mContext.getSystemService(Context.CONNECTIVITY_SERVICE))
@@ -119,8 +123,8 @@ public class WifiTetherPreferenceControllerTest {
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
mController.displayPreference(mScreen);
mLifecycle.onStart();
mLifecycle.onStop();
mLifecycle.handleLifecycleEvent(ON_START);
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
assertThat(ShadowWifiTetherSwitchBarController.onStopCalled).isTrue();
@@ -136,7 +140,7 @@ public class WifiTetherPreferenceControllerTest {
when(mScreen.findPreference(anyString())).thenReturn(pref);
mController.displayPreference(mScreen);
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
@@ -151,7 +155,7 @@ public class WifiTetherPreferenceControllerTest {
when(mScreen.findPreference(anyString())).thenReturn(pref);
mController.displayPreference(mScreen);
mLifecycle.onStart();
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));