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

Commit c267acd0 authored by David Su's avatar David Su
Browse files

SettingsUnitTests: migrate to @SystemApi Builders for WifiInfo & NetworkSelectionStatus

Use the newly created Builder classes to construct
WifiInfo & NetworkSelectionStatus with the
appropriate fields set, so that they can be
parceled/unparceled.

Bug: 138801922
Test: atest SettingsUnitTests
Change-Id: I8dd6bc5d51d1a41ff4b8b2760faaa00b633fc2f7
parent 03390a56
Loading
Loading
Loading
Loading
+22 −24
Original line number Diff line number Diff line
@@ -15,7 +15,6 @@
 */
package com.android.settings.wifi;

import static androidx.test.InstrumentationRegistry.getInstrumentation;
import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.assertion.ViewAssertions.doesNotExist;
import static androidx.test.espresso.assertion.ViewAssertions.matches;
@@ -28,9 +27,7 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText;
import static com.google.common.truth.Truth.assertThat;

import static org.hamcrest.Matchers.allOf;
import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.startsWith;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

@@ -39,9 +36,9 @@ import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiConfiguration.NetworkSelectionStatus;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiSsid;
import android.provider.Settings;

import androidx.fragment.app.Fragment;
@@ -60,13 +57,13 @@ import com.android.settingslib.wifi.WifiTrackerFactory;
import com.google.common.collect.Lists;

import org.junit.Before;
import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import java.nio.charset.StandardCharsets;
import java.util.List;

@RunWith(AndroidJUnit4.class)
@@ -129,11 +126,12 @@ public class WifiSettingsUiTest {
        config.SSID = TEST_SSID;
        config.BSSID = TEST_BSSID;
        config.networkId = TEST_NETWORK_ID;
        WifiInfo wifiInfo = new WifiInfo();
        wifiInfo.setSSID(WifiSsid.createFromAsciiEncoded(TEST_UNQUOTED_SSID));
        wifiInfo.setBSSID(TEST_BSSID);
        wifiInfo.setRssi(TEST_RSSI);
        wifiInfo.setNetworkId(TEST_NETWORK_ID);
        WifiInfo wifiInfo = new WifiInfo.Builder()
                .setSsid(TEST_UNQUOTED_SSID.getBytes(StandardCharsets.UTF_8))
                .setBssid(TEST_BSSID)
                .setRssi(TEST_RSSI)
                .setNetworkId(TEST_NETWORK_ID)
                .build();
        NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0, null, null);
        networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, null, null);
        AccessPoint accessPoint = new AccessPoint(mContext, config);
@@ -294,19 +292,20 @@ public class WifiSettingsUiTest {
        config.networkId = TEST_NETWORK_ID;
        config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);

        WifiConfiguration.NetworkSelectionStatus selectionStatus =
                new WifiConfiguration.NetworkSelectionStatus();
        selectionStatus.setNetworkSelectionDisableReason(
                WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD);
        selectionStatus.setNetworkSelectionStatus(
                WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_TEMPORARY_DISABLED);
        NetworkSelectionStatus selectionStatus = new NetworkSelectionStatus.Builder()
                .setNetworkSelectionDisableReason(
                        NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD)
                .setNetworkSelectionStatus(
                        NetworkSelectionStatus.NETWORK_SELECTION_TEMPORARY_DISABLED)
                .build();
        config.setNetworkSelectionStatus(selectionStatus);

        WifiInfo wifiInfo = new WifiInfo();
        wifiInfo.setSSID(WifiSsid.createFromAsciiEncoded(TEST_UNQUOTED_SSID));
        wifiInfo.setBSSID(TEST_BSSID);
        wifiInfo.setRssi(TEST_RSSI);
        wifiInfo.setNetworkId(TEST_NETWORK_ID);
        WifiInfo wifiInfo = new WifiInfo.Builder()
                .setSsid(TEST_UNQUOTED_SSID.getBytes(StandardCharsets.UTF_8))
                .setBssid(TEST_BSSID)
                .setRssi(TEST_RSSI)
                .setNetworkId(TEST_NETWORK_ID)
                .build();
        AccessPoint accessPoint = new AccessPoint(mContext, config);
        accessPoint.update(config, wifiInfo, null);

@@ -315,12 +314,11 @@ public class WifiSettingsUiTest {
        assertThat(accessPoint.getBssid()).isEqualTo(TEST_BSSID);
        assertThat(accessPoint.isActive()).isFalse();
        assertThat(accessPoint.getConfig()).isNotNull();
        WifiConfiguration.NetworkSelectionStatus networkStatus =
                accessPoint.getConfig().getNetworkSelectionStatus();
        NetworkSelectionStatus networkStatus = accessPoint.getConfig().getNetworkSelectionStatus();
        assertThat(networkStatus).isNotNull();
        assertThat(networkStatus.isNetworkEnabled()).isFalse();
        assertThat(networkStatus.getNetworkSelectionDisableReason()).isEqualTo(
                WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD);
                NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD);

        when(mWifiTracker.getAccessPoints()).thenReturn(Lists.newArrayList(accessPoint));
        launchActivity(WifiSettings.EXTRA_START_CONNECT_SSID, accessPoint.getSsidStr());
+7 −10
Original line number Diff line number Diff line
@@ -23,9 +23,7 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText;

import static com.google.common.truth.Truth.assertThat;

import static org.mockito.Mockito.any;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;

import android.content.Context;
import android.content.Intent;
@@ -35,7 +33,6 @@ import android.net.Uri;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiSsid;
import android.provider.Settings;

import androidx.fragment.app.Fragment;
@@ -45,19 +42,18 @@ import androidx.test.runner.AndroidJUnit4;

import com.android.settingslib.wifi.AccessPoint;
import com.android.settingslib.wifi.WifiTracker;
import com.android.settingslib.wifi.WifiTracker.WifiListener;
import com.android.settingslib.wifi.WifiTrackerFactory;

import com.google.common.collect.Lists;

import org.junit.Before;
import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import java.nio.charset.StandardCharsets;
import java.util.List;

@RunWith(AndroidJUnit4.class)
@@ -136,11 +132,12 @@ public class WifiNetworkListFragmentTest {
        config.BSSID = TEST_BSSID;
        config.networkId = TEST_NETWORK_ID;
        config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
        final WifiInfo wifiInfo = new WifiInfo();
        wifiInfo.setSSID(WifiSsid.createFromAsciiEncoded(TEST_UNQUOTED_SSID));
        wifiInfo.setBSSID(TEST_BSSID);
        wifiInfo.setRssi(TEST_RSSI);
        wifiInfo.setNetworkId(TEST_NETWORK_ID);
        final WifiInfo wifiInfo = new WifiInfo.Builder()
                .setSsid(TEST_UNQUOTED_SSID.getBytes(StandardCharsets.UTF_8))
                .setBssid(TEST_BSSID)
                .setRssi(TEST_RSSI)
                .setNetworkId(TEST_NETWORK_ID)
                .build();
        final NetworkInfo networkInfo = new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0, null, null);
        networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, null, null);
        final AccessPoint accessPoint = new AccessPoint(mContext, config);