Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9797a39a authored by Sundeep Ghuman's avatar Sundeep Ghuman Committed by Android (Google) Code Review
Browse files

Merge "Force update APs when enabling wifi in WifiSettings." into oc-dev

parents 09317a65 87bf49a4
Loading
Loading
Loading
Loading
+12 −6
Original line number Original line Diff line number Diff line
@@ -340,14 +340,20 @@ public class WifiSettings extends RestrictedSettingsFragment
        mWifiTracker.startTracking();
        mWifiTracker.startTracking();


        if (!isUiRestricted() && mWifiManager.isWifiEnabled()) {
        if (!isUiRestricted() && mWifiManager.isWifiEnabled()) {
            forceUpdateAPs();
        }
    }

    private void forceUpdateAPs() {
        setProgressBarVisible(true);
        setProgressBarVisible(true);
        mWifiTracker.forceUpdate();
        mWifiTracker.forceUpdate();
            if (DEBUG) Log.d(TAG, "WifiSettings onStart APs: " + mWifiTracker.getAccessPoints());
        if (DEBUG) {
            Log.d(TAG, "WifiSettings force update APs: " + mWifiTracker.getAccessPoints());
        }


        getView().removeCallbacks(mUpdateAccessPointsRunnable);
        getView().removeCallbacks(mUpdateAccessPointsRunnable);
        updateAccessPointPreferences();
        updateAccessPointPreferences();
    }
    }
    }


    /**
    /**
     * @return new WifiEnabler or null (as overridden by WifiSettingsForSetupWizard)
     * @return new WifiEnabler or null (as overridden by WifiSettingsForSetupWizard)
@@ -661,7 +667,7 @@ public class WifiSettings extends RestrictedSettingsFragment
        final int wifiState = mWifiManager.getWifiState();
        final int wifiState = mWifiManager.getWifiState();
        switch (wifiState) {
        switch (wifiState) {
            case WifiManager.WIFI_STATE_ENABLED:
            case WifiManager.WIFI_STATE_ENABLED:
                updateAccessPointsDelayed();
                forceUpdateAPs();
                break;
                break;


            case WifiManager.WIFI_STATE_ENABLING:
            case WifiManager.WIFI_STATE_ENABLING:
+18 −3
Original line number Original line Diff line number Diff line
@@ -19,18 +19,22 @@ import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.action.ViewActions.click;
import static android.support.test.espresso.action.ViewActions.click;
import static android.support.test.espresso.matcher.ViewMatchers.withText;
import static android.support.test.espresso.matcher.ViewMatchers.withText;


import android.app.Instrumentation;
import static org.mockito.Mockito.when;

import android.content.Context;
import android.content.Context;
import android.content.Intent;
import android.content.Intent;
import android.net.wifi.WifiManager;
import android.support.test.InstrumentationRegistry;
import android.support.test.InstrumentationRegistry;
import android.support.test.rule.ActivityTestRule;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import android.support.test.runner.AndroidJUnit4;


import com.android.settings.R;
import com.android.settings.Settings.WifiSettingsActivity;
import com.android.settings.Settings.WifiSettingsActivity;
import com.android.settingslib.wifi.AccessPoint;
import com.android.settingslib.wifi.WifiTracker;
import com.android.settingslib.wifi.WifiTracker;
import com.android.settingslib.wifi.WifiTrackerFactory;
import com.android.settingslib.wifi.WifiTrackerFactory;


import com.google.common.collect.Lists;

import org.junit.Before;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.Test;
@@ -43,9 +47,13 @@ public class WifiSettingsUiTest {


    // TODO(sghuman): Investigate why resource ids are not resolving correctly in the test apk,
    // TODO(sghuman): Investigate why resource ids are not resolving correctly in the test apk,
    // then remove this manual string entry
    // then remove this manual string entry
    private static final String WIFI_PREFERENCES = "Wi\\u2011Fi preferences";
    private static final String WIFI_PREFERENCES = "Wi\u2011Fi preferences";


    @Mock private AccessPoint mockAccessPoint;
    @Mock private WifiTracker mockWifiTracker;
    @Mock private WifiTracker mockWifiTracker;
    @Mock private WifiManager mockWifiManager;

    private Context mContext;


    @Rule
    @Rule
    public ActivityTestRule<WifiSettingsActivity> mActivityRule =
    public ActivityTestRule<WifiSettingsActivity> mActivityRule =
@@ -54,7 +62,14 @@ public class WifiSettingsUiTest {
    @Before
    @Before
    public void setUp() {
    public void setUp() {
        MockitoAnnotations.initMocks(this);
        MockitoAnnotations.initMocks(this);
        mContext = InstrumentationRegistry.getTargetContext();

        WifiTrackerFactory.setTestingWifiTracker(mockWifiTracker);
        WifiTrackerFactory.setTestingWifiTracker(mockWifiTracker);
        when(mockWifiTracker.getManager()).thenReturn(mockWifiManager);
        when(mockWifiTracker.getAccessPoints()).thenReturn(
                Lists.asList(mockAccessPoint, new AccessPoint[]{}));

        when(mockWifiManager.isWifiEnabled()).thenReturn(true);
    }
    }


    private void launchActivity() {
    private void launchActivity() {