Loading tests/unit/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java +70 −1 Original line number Diff line number Diff line Loading @@ -20,15 +20,33 @@ import static android.os.UserManager.DISALLOW_ADD_WIFI_CONFIG; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.when; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.anyString; import static org.mockito.Mockito.anyInt; import static org.mockito.Mockito.any; import static org.mockito.Mockito.mock; import android.content.Context; import android.content.Intent; import android.os.UserManager; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; import android.platform.test.flag.junit.SetFlagsRule; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; import androidx.test.annotation.UiThreadTest; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; import com.android.settings.flags.Flags; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.wifi.factory.WifiFeatureProvider; import org.junit.Before; import org.junit.Rule; import org.junit.Test; Loading @@ -44,18 +62,36 @@ public class WifiDppConfiguratorActivityTest { @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule(); @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Spy private final Context mContext = ApplicationProvider.getApplicationContext(); @Mock private UserManager mUserManager; @Mock private FragmentManager mFragmentManager; // Mock, created by FakeFeatureFactory private WifiFeatureProvider mWifiFeatureProviderMock; @Spy private WifiDppConfiguratorActivity mActivity; @Before public void setUp() { when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); mActivity = new WifiDppConfiguratorActivity(); mActivity.mFragmentManager = mFragmentManager; doReturn(mContext).when(mActivity).getApplicationContext(); FragmentTransaction mockTransaction = mock(FragmentTransaction.class); when(mFragmentManager.beginTransaction()).thenReturn(mockTransaction); when(mockTransaction.replace(anyInt(), any(Fragment.class), anyString())) .thenReturn(mockTransaction); FakeFeatureFactory featureFactory = FakeFeatureFactory.setupForTest(); mWifiFeatureProviderMock = featureFactory.mWifiFeatureProvider; } @Test Loading @@ -71,4 +107,37 @@ public class WifiDppConfiguratorActivityTest { assertThat(mActivity.isAddWifiConfigAllowed(mContext)).isFalse(); } @Test @EnableFlags(Flags.FLAG_ENABLE_WIFI_SHARING_RUNTIME_FRAGMENT) public void showQrCodeGeneratorFragment_shouldUseFeatureFactory() { when(mUserManager.isGuestUser()).thenReturn(false); when(mWifiFeatureProviderMock.getWifiDppQrCodeGeneratorFragment()) .thenReturn(new WifiDppQrCodeGeneratorFragment()); mActivity.handleIntent(createQrCodeGeneratorIntent()); verify(mWifiFeatureProviderMock).getWifiDppQrCodeGeneratorFragment(); } @Test @DisableFlags(Flags.FLAG_ENABLE_WIFI_SHARING_RUNTIME_FRAGMENT) public void showQrCodeGeneratorFragment_shouldNotUseFeatureFactory() { when(mUserManager.isGuestUser()).thenReturn(false); mActivity.handleIntent(createQrCodeGeneratorIntent()); verify(mWifiFeatureProviderMock, never()) .getWifiDppQrCodeGeneratorFragment(); } private static Intent createQrCodeGeneratorIntent() { Intent intent = new Intent( WifiDppConfiguratorActivity.ACTION_CONFIGURATOR_QR_CODE_GENERATOR); intent.putExtra(WifiDppUtils.EXTRA_WIFI_SSID, "GoogleGuest"); intent.putExtra(WifiDppUtils.EXTRA_WIFI_SECURITY, "WPA"); intent.putExtra(WifiDppUtils.EXTRA_WIFI_PRE_SHARED_KEY, "\\012345678,"); return intent; } } Loading
tests/unit/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java +70 −1 Original line number Diff line number Diff line Loading @@ -20,15 +20,33 @@ import static android.os.UserManager.DISALLOW_ADD_WIFI_CONFIG; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.when; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.anyString; import static org.mockito.Mockito.anyInt; import static org.mockito.Mockito.any; import static org.mockito.Mockito.mock; import android.content.Context; import android.content.Intent; import android.os.UserManager; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; import android.platform.test.flag.junit.SetFlagsRule; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; import androidx.test.annotation.UiThreadTest; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; import com.android.settings.flags.Flags; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.wifi.factory.WifiFeatureProvider; import org.junit.Before; import org.junit.Rule; import org.junit.Test; Loading @@ -44,18 +62,36 @@ public class WifiDppConfiguratorActivityTest { @Rule public final MockitoRule mMockitoRule = MockitoJUnit.rule(); @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Spy private final Context mContext = ApplicationProvider.getApplicationContext(); @Mock private UserManager mUserManager; @Mock private FragmentManager mFragmentManager; // Mock, created by FakeFeatureFactory private WifiFeatureProvider mWifiFeatureProviderMock; @Spy private WifiDppConfiguratorActivity mActivity; @Before public void setUp() { when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); mActivity = new WifiDppConfiguratorActivity(); mActivity.mFragmentManager = mFragmentManager; doReturn(mContext).when(mActivity).getApplicationContext(); FragmentTransaction mockTransaction = mock(FragmentTransaction.class); when(mFragmentManager.beginTransaction()).thenReturn(mockTransaction); when(mockTransaction.replace(anyInt(), any(Fragment.class), anyString())) .thenReturn(mockTransaction); FakeFeatureFactory featureFactory = FakeFeatureFactory.setupForTest(); mWifiFeatureProviderMock = featureFactory.mWifiFeatureProvider; } @Test Loading @@ -71,4 +107,37 @@ public class WifiDppConfiguratorActivityTest { assertThat(mActivity.isAddWifiConfigAllowed(mContext)).isFalse(); } @Test @EnableFlags(Flags.FLAG_ENABLE_WIFI_SHARING_RUNTIME_FRAGMENT) public void showQrCodeGeneratorFragment_shouldUseFeatureFactory() { when(mUserManager.isGuestUser()).thenReturn(false); when(mWifiFeatureProviderMock.getWifiDppQrCodeGeneratorFragment()) .thenReturn(new WifiDppQrCodeGeneratorFragment()); mActivity.handleIntent(createQrCodeGeneratorIntent()); verify(mWifiFeatureProviderMock).getWifiDppQrCodeGeneratorFragment(); } @Test @DisableFlags(Flags.FLAG_ENABLE_WIFI_SHARING_RUNTIME_FRAGMENT) public void showQrCodeGeneratorFragment_shouldNotUseFeatureFactory() { when(mUserManager.isGuestUser()).thenReturn(false); mActivity.handleIntent(createQrCodeGeneratorIntent()); verify(mWifiFeatureProviderMock, never()) .getWifiDppQrCodeGeneratorFragment(); } private static Intent createQrCodeGeneratorIntent() { Intent intent = new Intent( WifiDppConfiguratorActivity.ACTION_CONFIGURATOR_QR_CODE_GENERATOR); intent.putExtra(WifiDppUtils.EXTRA_WIFI_SSID, "GoogleGuest"); intent.putExtra(WifiDppUtils.EXTRA_WIFI_SECURITY, "WPA"); intent.putExtra(WifiDppUtils.EXTRA_WIFI_PRE_SHARED_KEY, "\\012345678,"); return intent; } }