diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetAdapter.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetAdapter.java index 44c1b7bd7332f..13ee155d5af26 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetAdapter.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetAdapter.java @@ -19,7 +19,6 @@ package com.android.systemui.qs.tiles.dialog; import static com.android.wifitrackerlib.WifiEntry.SECURITY_NONE; import static com.android.wifitrackerlib.WifiEntry.SECURITY_OWE; -import android.annotation.ColorInt; import android.content.Context; import android.content.Intent; import android.graphics.drawable.Drawable; @@ -35,10 +34,10 @@ import android.widget.LinearLayout; import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.annotation.VisibleForTesting; import androidx.recyclerview.widget.RecyclerView; import com.android.settingslib.Utils; +import com.android.settingslib.wifi.WifiUtils; import com.android.systemui.R; import com.android.wifitrackerlib.WifiEntry; @@ -98,8 +97,7 @@ public class InternetAdapter extends RecyclerView.Adapter wifiAp.getConnectedState() - != WifiEntry.CONNECTED_STATE_CONNECTED) + .filter(wifiEntry -> !wifiEntry.isDefaultNetwork()) .limit(getItemCount()) .collect(Collectors.toList()); } @@ -109,21 +107,21 @@ public class InternetAdapter extends RecyclerView.Adapter shared = new AtomicReference<>(); - final @ColorInt int tint = Utils.getColorAttrDefaultColor(mContext, - android.R.attr.colorControlNormal); - Drawable signalDrawable = mContext.getDrawable( - Utils.getWifiIconResource(wifiEntry.getLevel())); - signalDrawable.setTint(tint); - shared.set(signalDrawable); - drawable = shared.get(); - return drawable; + Drawable getWifiDrawable(@NonNull WifiEntry wifiEntry) throws Throwable { + final Drawable drawable = mWifiIconInjector.getIcon(wifiEntry.shouldShowXLevelIcon(), + wifiEntry.getLevel()); + if (drawable == null) { + return null; + } + drawable.setTint( + Utils.getColorAttrDefaultColor(mContext, android.R.attr.colorControlNormal)); + final AtomicReference shared = new AtomicReference<>(); + shared.set(drawable); + return shared.get(); } } } diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java index f303aa9df4127..2a962bc90bab2 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java @@ -91,6 +91,8 @@ public class InternetDialog extends SystemUIDialog implements protected WifiManager mWifiManager; @VisibleForTesting protected View mDialogView; + @VisibleForTesting + protected WifiEntry mConnectedWifiEntry; private InternetDialogFactory mInternetDialogFactory; private SubscriptionManager mSubscriptionManager; @@ -123,7 +125,6 @@ public class InternetDialog extends SystemUIDialog implements private Switch mWiFiToggle; private Button mDoneButton; private Drawable mBackgroundOn; - private WifiEntry mConnectedWifiEntry; private int mListMaxHeight; private int mDefaultDataSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; private boolean mCanConfigMobileData; @@ -355,8 +356,7 @@ public class InternetDialog extends SystemUIDialog implements } private void setConnectedWifiLayout() { - if (!mWifiManager.isWifiEnabled() - || mInternetDialogController.getConnectedWifiEntry() == null) { + if (!mWifiManager.isWifiEnabled() || mConnectedWifiEntry == null) { mConnectedWifListLayout.setBackground(null); mConnectedWifListLayout.setVisibility(View.GONE); return; @@ -364,7 +364,8 @@ public class InternetDialog extends SystemUIDialog implements mConnectedWifListLayout.setVisibility(View.VISIBLE); mConnectedWifiTitleText.setText(getConnectedWifiTitle()); mConnectedWifiSummaryText.setText(getConnectedWifiSummary()); - mConnectedWifiIcon.setImageDrawable(getConnectedWifiDrawable()); + mConnectedWifiIcon.setImageDrawable( + mInternetDialogController.getConnectedWifiDrawable(mConnectedWifiEntry)); mConnectedWifiTitleText.setTextColor( mContext.getColor(R.color.connected_network_primary_color)); mConnectedWifiSummaryText.setTextColor( @@ -391,15 +392,6 @@ public class InternetDialog extends SystemUIDialog implements mIsProgressBarVisible && !mIsSearchingHidden); } - private Drawable getConnectedWifiDrawable() { - try { - return mInternetDialogController.getWifiConnectedDrawable(mConnectedWifiEntry); - } catch (Throwable e) { - e.printStackTrace(); - } - return null; - } - private Drawable getSignalStrengthDrawable() { return mInternetDialogController.getSignalStrengthDrawable(); } @@ -413,11 +405,11 @@ public class InternetDialog extends SystemUIDialog implements } String getConnectedWifiTitle() { - return mInternetDialogController.getConnectedWifiTitle(); + return mInternetDialogController.getDefaultWifiTitle(); } String getConnectedWifiSummary() { - return mInternetDialogController.getConnectedWifiSummary(); + return mInternetDialogController.getDefaultWifiSummary(); } protected void showProgressBar() { diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java index 8123fc855be52..5c22e855a3d0f 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java @@ -19,7 +19,6 @@ package com.android.systemui.qs.tiles.dialog; import static com.android.settingslib.mobile.MobileMappings.getIconKey; import static com.android.settingslib.mobile.MobileMappings.mapIconSets; -import android.annotation.ColorInt; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; @@ -134,6 +133,8 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, protected SubscriptionManager.OnSubscriptionsChangedListener mOnSubscriptionsChangedListener; @VisibleForTesting protected InternetTelephonyCallback mInternetTelephonyCallback; + @VisibleForTesting + protected WifiUtils.InternetIconInjector mWifiIconInjector; private final KeyguardUpdateMonitorCallback mKeyguardUpdateCallback = new KeyguardUpdateMonitorCallback() { @@ -181,6 +182,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, mActivityStarter = starter; mAccessPointController = accessPointController; mConfig = MobileMappings.Config.readConfig(mContext); + mWifiIconInjector = new WifiUtils.InternetIconInjector(mContext); } void onStart(@NonNull InternetDialogCallback callback) { @@ -315,14 +317,14 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, return mContext.getText(SUBTITLE_TEXT_NON_CARRIER_NETWORK_UNAVAILABLE); } - Drawable getWifiConnectedDrawable(WifiEntry wifiEntry) throws Throwable { - final @ColorInt int tint; - tint = Utils.getColorAttrDefaultColor(mContext, - com.android.internal.R.attr.colorControlNormal); - final Drawable drawable = mContext.getDrawable( - com.android.settingslib.Utils.getWifiIconResource(wifiEntry.getLevel())); - drawable.setTint(tint); - + Drawable getConnectedWifiDrawable(@NonNull WifiEntry wifiEntry) { + final Drawable drawable = + mWifiIconInjector.getIcon(false /* noInternet*/, wifiEntry.getLevel()); + if (drawable == null) { + return null; + } + drawable.setTint(Utils.getColorAttrDefaultColor(mContext, + com.android.internal.R.attr.colorControlNormal)); return drawable; } @@ -525,24 +527,24 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, return summary; } - String getConnectedWifiTitle() { - if (getConnectedWifiEntry() == null) { + String getDefaultWifiTitle() { + if (getDefaultWifiEntry() == null) { if (DEBUG) { Log.d(TAG, "connected entry is null"); } return ""; } - return getConnectedWifiEntry().getTitle(); + return getDefaultWifiEntry().getTitle(); } - String getConnectedWifiSummary() { - if (getConnectedWifiEntry() == null) { + String getDefaultWifiSummary() { + if (getDefaultWifiEntry() == null) { if (DEBUG) { Log.d(TAG, "connected entry is null"); } return ""; } - return getConnectedWifiEntry().getSummary(false); + return getDefaultWifiEntry().getSummary(false); } void launchNetworkSetting() { @@ -570,8 +572,11 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, return mWifiEntry; } - WifiEntry getConnectedWifiEntry() { - return mConnectedEntry; + WifiEntry getDefaultWifiEntry() { + if (mConnectedEntry != null && mConnectedEntry.isDefaultNetwork()) { + return mConnectedEntry; + } + return null; } WifiManager getWifiManager() { @@ -770,7 +775,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, mConnectedEntry = null; } - mCallback.onAccessPointsChanged(mWifiEntry, mConnectedEntry); + mCallback.onAccessPointsChanged(mWifiEntry, getDefaultWifiEntry()); } @Override @@ -873,6 +878,10 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback, } } + public WifiUtils.InternetIconInjector getWifiIconInjector() { + return mWifiIconInjector; + } + interface InternetDialogCallback { void onRefreshCarrierInfo(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetAdapterTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetAdapterTest.java index a8f6f5361d787..9c3301ef3dc48 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetAdapterTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetAdapterTest.java @@ -2,7 +2,9 @@ package com.android.systemui.qs.tiles.dialog; import static com.google.common.truth.Truth.assertThat; -import static org.mockito.Mockito.mock; +import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.testing.AndroidTestingRunner; @@ -11,6 +13,7 @@ import android.widget.LinearLayout; import androidx.test.filters.SmallTest; +import com.android.settingslib.wifi.WifiUtils; import com.android.systemui.SysuiTestCase; import com.android.wifitrackerlib.WifiEntry; @@ -28,51 +31,55 @@ public class InternetAdapterTest extends SysuiTestCase { private static final String WIFI_TITLE = "Wi-Fi Title"; private static final String WIFI_SUMMARY = "Wi-Fi Summary"; - private InternetDialogController mInternetDialogController = mock( - InternetDialogController.class); + + @Mock + private WifiEntry mWifiEntry; + @Mock + private InternetDialogController mInternetDialogController; + @Mock + private WifiUtils.InternetIconInjector mWifiIconInjector; + private InternetAdapter mInternetAdapter; private InternetAdapter.InternetViewHolder mViewHolder; - @Mock - private WifiEntry mWifiEntry = mock(WifiEntry.class); @Before public void setUp() { MockitoAnnotations.initMocks(this); mInternetAdapter = new InternetAdapter(mInternetDialogController); - mViewHolder = (InternetAdapter.InternetViewHolder) mInternetAdapter - .onCreateViewHolder(new LinearLayout(mContext), 0); + mViewHolder = mInternetAdapter.onCreateViewHolder(new LinearLayout(mContext), 0); when(mWifiEntry.getTitle()).thenReturn(WIFI_TITLE); when(mWifiEntry.getSummary(false)).thenReturn(WIFI_SUMMARY); when(mInternetDialogController.getWifiEntryList()).thenReturn(Arrays.asList(mWifiEntry)); + mViewHolder.mWifiIconInjector = mWifiIconInjector; } @Test - public void getItemCount_withApmOnWifiOnNoConnectedWifi_returnFour() { + public void getItemCount_withApmOnWifiOnNoDefaultWifi_returnFour() { when(mInternetDialogController.isAirplaneModeEnabled()).thenReturn(true); assertThat(mInternetAdapter.getItemCount()).isEqualTo(4); } @Test - public void getItemCount_withApmOnWifiOnHasConnectedWifi_returnThree() { - when(mWifiEntry.getConnectedState()).thenReturn(WifiEntry.CONNECTED_STATE_CONNECTED); - when(mInternetDialogController.getConnectedWifiEntry()).thenReturn(mWifiEntry); + public void getItemCount_withApmOnWifiOnHasDefaultWifi_returnThree() { + when(mWifiEntry.isDefaultNetwork()).thenReturn(true); + when(mInternetDialogController.getDefaultWifiEntry()).thenReturn(mWifiEntry); when(mInternetDialogController.isAirplaneModeEnabled()).thenReturn(true); assertThat(mInternetAdapter.getItemCount()).isEqualTo(3); } @Test - public void getItemCount_withApmOffWifiOnNoConnectedWifi_returnThree() { + public void getItemCount_withApmOffWifiOnNoDefaultWifi_returnThree() { when(mInternetDialogController.isAirplaneModeEnabled()).thenReturn(false); assertThat(mInternetAdapter.getItemCount()).isEqualTo(3); } @Test - public void getItemCount_withApmOffWifiOnHasConnectedWifi_returnTwo() { - when(mWifiEntry.getConnectedState()).thenReturn(WifiEntry.CONNECTED_STATE_CONNECTED); - when(mInternetDialogController.getConnectedWifiEntry()).thenReturn(mWifiEntry); + public void getItemCount_withApmOffWifiOnHasDefaultWifi_returnTwo() { + when(mWifiEntry.isDefaultNetwork()).thenReturn(true); + when(mInternetDialogController.getDefaultWifiEntry()).thenReturn(mWifiEntry); when(mInternetDialogController.isAirplaneModeEnabled()).thenReturn(false); assertThat(mInternetAdapter.getItemCount()).isEqualTo(2); @@ -99,4 +106,22 @@ public class InternetAdapterTest extends SysuiTestCase { assertThat(mViewHolder.mWifiIcon.getVisibility()).isEqualTo(View.VISIBLE); assertThat(mViewHolder.mWifiLockedIcon.getVisibility()).isEqualTo(View.VISIBLE); } + + @Test + public void onBindViewHolder_bindDefaultWifiNetwork_getIconWithInternet() { + when(mWifiEntry.shouldShowXLevelIcon()).thenReturn(false); + + mInternetAdapter.onBindViewHolder(mViewHolder, 0); + + verify(mWifiIconInjector).getIcon(eq(false) /* noInternet */, anyInt()); + } + + @Test + public void onBindViewHolder_bindNoDefaultWifiNetwork_getIconWithNoInternet() { + when(mWifiEntry.shouldShowXLevelIcon()).thenReturn(true); + + mInternetAdapter.onBindViewHolder(mViewHolder, 0); + + verify(mWifiIconInjector).getIcon(eq(true) /* noInternet */, anyInt()); + } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java index 68df19ef93c9a..cdd6d66c45d2f 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java @@ -4,7 +4,9 @@ import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; @@ -13,6 +15,7 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.content.Intent; +import android.graphics.drawable.Drawable; import android.net.ConnectivityManager; import android.net.wifi.ScanResult; import android.net.wifi.WifiInfo; @@ -30,6 +33,8 @@ import androidx.test.filters.SmallTest; import com.android.internal.logging.UiEventLogger; import com.android.keyguard.KeyguardUpdateMonitor; +import com.android.settingslib.Utils; +import com.android.settingslib.wifi.WifiUtils; import com.android.systemui.SysuiTestCase; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.dagger.qualifiers.Main; @@ -60,16 +65,12 @@ public class InternetDialogControllerTest extends SysuiTestCase { private static final String CONNECTED_TITLE = "Connected Wi-Fi Title"; private static final String CONNECTED_SUMMARY = "Connected Wi-Fi Summary"; - private final UiEventLogger mUiEventLogger = mock(UiEventLogger.class); - private MockInternetDialogController mInternetDialogController; - private InternetDialogController.InternetDialogCallback mCallback = - mock(InternetDialogController.InternetDialogCallback.class); - private ActivityStarter mStarter = mock(ActivityStarter.class); - private WifiManager mWifiManager = mock(WifiManager.class); - private ConnectivityManager mConnectivityManager = mock(ConnectivityManager.class); - private TelephonyManager mTelephonyManager = mock(TelephonyManager.class); - private SubscriptionManager mSubscriptionManager = mock(SubscriptionManager.class); - private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); + @Mock + private WifiManager mWifiManager; + @Mock + private TelephonyManager mTelephonyManager; + @Mock + private SubscriptionManager mSubscriptionManager; @Mock private Handler mHandler; @Mock @@ -88,21 +89,31 @@ public class InternetDialogControllerTest extends SysuiTestCase { private ServiceState mServiceState; @Mock private BroadcastDispatcher mBroadcastDispatcher; + @Mock + private WifiUtils.InternetIconInjector mWifiIconInjector; + + private MockInternetDialogController mInternetDialogController; + private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); @Before public void setUp() { MockitoAnnotations.initMocks(this); doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID); when(mWifiManager.getConnectionInfo()).thenReturn(mWifiInfo); - mInternetDialogController = new MockInternetDialogController(mContext, mUiEventLogger, - mStarter, mAccessPointController, mSubscriptionManager, mTelephonyManager, - mWifiManager, mConnectivityManager, mHandler, mExecutor, mBroadcastDispatcher, + when(mConnectedEntry.isDefaultNetwork()).thenReturn(true); + + mInternetDialogController = new MockInternetDialogController(mContext, + mock(UiEventLogger.class), mock(ActivityStarter.class), mAccessPointController, + mSubscriptionManager, mTelephonyManager, mWifiManager, + mock(ConnectivityManager.class), mHandler, mExecutor, mBroadcastDispatcher, mKeyguardUpdateMonitor, mGlobalSettings); mSubscriptionManager.addOnSubscriptionsChangedListener(mExecutor, mInternetDialogController.mOnSubscriptionsChangedListener); - mInternetDialogController.onStart(mCallback); + mInternetDialogController.onStart( + mock(InternetDialogController.InternetDialogCallback.class)); mInternetDialogController.mActivityStarter = mActivityStarter; mInternetDialogController.mConnectedEntry = mConnectedEntry; + mInternetDialogController.mWifiIconInjector = mWifiIconInjector; } @Test @@ -199,35 +210,53 @@ public class InternetDialogControllerTest extends SysuiTestCase { } @Test - public void getConnectedWifiTitle_withNoConnectedEntry_returnNull() { + public void getDefaultWifiEntry_connectedEntryIsNull_returnNull() { mInternetDialogController.mConnectedEntry = null; - assertTrue(TextUtils.equals(mInternetDialogController.getConnectedWifiTitle(), - "")); + assertThat(mInternetDialogController.getDefaultWifiEntry()).isNull(); } @Test - public void getConnectedWifiTitle_withConnectedEntry_returnTitle() { + public void getDefaultWifiEntry_connectedEntryIsNotDefault_returnNull() { + when(mConnectedEntry.isDefaultNetwork()).thenReturn(false); + + assertThat(mInternetDialogController.getDefaultWifiEntry()).isNull(); + } + + @Test + public void getDefaultWifiEntry_connectedEntryIsDefault_returnConnectedEntry() { + // The default conditions have been set in setUp(). + // - The connected Wi-Fi entry with the default network condition. + + assertThat(mInternetDialogController.getDefaultWifiEntry()).isEqualTo(mConnectedEntry); + } + + @Test + public void getDefaultWifiTitle_withNoDefaultEntry_returnEmpty() { + mInternetDialogController.mConnectedEntry = null; + + assertThat(mInternetDialogController.getDefaultWifiTitle()).isEmpty(); + } + + @Test + public void getDefaultWifiTitle_withDefaultEntry_returnTitle() { when(mConnectedEntry.getTitle()).thenReturn(CONNECTED_TITLE); - assertTrue(TextUtils.equals(mInternetDialogController.getConnectedWifiTitle(), - CONNECTED_TITLE)); + assertThat(mInternetDialogController.getDefaultWifiTitle()).isEqualTo(CONNECTED_TITLE); } @Test - public void getConnectedWifiSummary_withNoConnectedEntry_returnNull() { + public void getDefaultWifiSummary_withNoDefaultEntry_returnEmpty() { mInternetDialogController.mConnectedEntry = null; - assertTrue(TextUtils.equals(mInternetDialogController.getConnectedWifiSummary(), - "")); + assertThat(mInternetDialogController.getDefaultWifiSummary()).isEmpty(); } @Test - public void getConnectedWifiSummary_withConnectedEntry_returnSummary() { + public void getDefaultWifiSummary_withDefaultEntry_returnSummary() { when(mConnectedEntry.getSummary(false)).thenReturn(CONNECTED_SUMMARY); - assertTrue(TextUtils.equals(mInternetDialogController.getConnectedWifiSummary(), - CONNECTED_SUMMARY)); + assertThat(mInternetDialogController.getDefaultWifiSummary()).isEqualTo(CONNECTED_SUMMARY); } @Test @@ -251,6 +280,18 @@ public class InternetDialogControllerTest extends SysuiTestCase { assertThat(mInternetDialogController.getWifiDetailsSettingsIntent()).isNotNull(); } + @Test + public void getWifiConnectedDrawable_withConnectedEntry_returnIntentIconWithColorAccent() { + final Drawable drawable = mock(Drawable.class); + when(mWifiIconInjector.getIcon(anyBoolean(), anyInt())).thenReturn(drawable); + + mInternetDialogController.getConnectedWifiDrawable(mConnectedEntry); + + verify(mWifiIconInjector).getIcon(eq(false), anyInt()); + verify(drawable).setTint(Utils.getColorAttrDefaultColor(mContext, + com.android.internal.R.attr.colorControlNormal)); + } + @Test public void launchWifiNetworkDetailsSetting_withNoConnectedEntry_doNothing() { mInternetDialogController.mConnectedEntry = null; diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogTest.java index a1a7e716e6c0d..856e3a1281939 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogTest.java @@ -41,6 +41,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; import org.mockito.Mock; +import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import java.util.ArrayList; @@ -141,11 +142,13 @@ public class InternetDialogTest extends SysuiTestCase { when(mWifiEntry.getTitle()).thenReturn(WIFI_TITLE); when(mWifiEntry.getSummary(false)).thenReturn(WIFI_SUMMARY); when(mWifiEntry.getConnectedState()).thenReturn(WifiEntry.CONNECTED_STATE_CONNECTED); - when(mInternetDialogController.getConnectedWifiEntry()).thenReturn(mWifiEntry); + when(mWifiEntry.isDefaultNetwork()).thenReturn(true); + mInternetDialog.mConnectedWifiEntry = mWifiEntry; + mInternetDialog.updateDialog(); + final LinearLayout linearLayout = mInternetDialog.mDialogView.requireViewById( R.id.wifi_connected_layout); - assertThat(linearLayout.getVisibility()).isEqualTo(View.VISIBLE); } @@ -180,6 +183,7 @@ public class InternetDialogTest extends SysuiTestCase { @Test public void showProgressBar_wifiDisabled_hideProgressBar() { + Mockito.reset(mHandler); when(mMockWifiManager.isWifiEnabled()).thenReturn(false); mInternetDialog.showProgressBar(); @@ -190,6 +194,7 @@ public class InternetDialogTest extends SysuiTestCase { @Test public void showProgressBar_wifiEnabledWithWifiEntry_showProgressBarThenHide() { + Mockito.reset(mHandler); when(mMockWifiManager.isWifiEnabled()).thenReturn(true); List wifiScanResults = mock(ArrayList.class); when(wifiScanResults.size()).thenReturn(1); @@ -211,6 +216,7 @@ public class InternetDialogTest extends SysuiTestCase { @Test public void showProgressBar_wifiEnabledWithoutWifiScanResults_showProgressBarThenHideSearch() { + Mockito.reset(mHandler); when(mMockWifiManager.isWifiEnabled()).thenReturn(true); List wifiScanResults = mock(ArrayList.class); when(wifiScanResults.size()).thenReturn(0);