Merge "Update AP preference to not be master switch pref" into pi-dev

This commit is contained in:
TreeHugger Robot
2018-03-21 19:52:05 +00:00
committed by Android (Google) Code Review
3 changed files with 4 additions and 51 deletions

View File

@@ -19,7 +19,7 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:title="@string/tether_settings_title_all">
<com.android.settings.widget.MasterSwitchPreference
<Preference
android:key="wifi_tether"
android:title="@string/wifi_hotspot_checkbox_text"
android:summary="@string/summary_two_lines_placeholder"

View File

@@ -25,14 +25,13 @@ import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.provider.Settings;
import android.support.annotation.VisibleForTesting;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.text.BidiFormatter;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.MasterSwitchController;
import com.android.settings.widget.MasterSwitchPreference;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
@@ -50,10 +49,9 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
private final String[] mWifiRegexs;
private final WifiManager mWifiManager;
private final Lifecycle mLifecycle;
private WifiTetherSwitchBarController mSwitchController;
private int mSoftApState;
@VisibleForTesting
MasterSwitchPreference mPreference;
Preference mPreference;
@VisibleForTesting
WifiTetherSoftApManager mWifiTetherSoftApManager;
@@ -88,14 +86,11 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mPreference = (MasterSwitchPreference) screen.findPreference(WIFI_TETHER_SETTINGS);
mPreference = screen.findPreference(WIFI_TETHER_SETTINGS);
if (mPreference == null) {
// unavailable
return;
}
mSwitchController = new WifiTetherSwitchBarController(
mContext, new MasterSwitchController(mPreference));
mLifecycle.addObserver(mSwitchController);
}
@Override

View File

@@ -122,48 +122,6 @@ public class WifiTetherPreferenceControllerTest {
assertThat(mController.isAvailable()).isTrue();
}
@Test
public void startAndStop_shouldRegisterUnregisterReceiver() {
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
mLifecycle.handleLifecycleEvent(ON_START);
mLifecycle.handleLifecycleEvent(ON_STOP);
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
assertThat(ShadowWifiTetherSwitchBarController.onStopCalled).isTrue();
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
verify(mContext).unregisterReceiver(receiver);
}
@Test
public void start_wifiApOff_shouldSetInitialStateToOff() {
when(mWifiManager.getWifiApState()).thenReturn(WifiManager.WIFI_AP_STATE_DISABLED);
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
final MasterSwitchPreference pref = mock(MasterSwitchPreference.class);
when(mScreen.findPreference(anyString())).thenReturn(pref);
mController.displayPreference(mScreen);
mLifecycle.handleLifecycleEvent(ON_START);
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
verify(pref).setChecked(false);
}
@Test
public void start_wifiApOn_shouldSetInitialStateToOn() {
when(mWifiManager.getWifiApState()).thenReturn(WifiManager.WIFI_AP_STATE_ENABLED);
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
final MasterSwitchPreference pref = mock(MasterSwitchPreference.class);
when(mScreen.findPreference(anyString())).thenReturn(pref);
mController.displayPreference(mScreen);
mLifecycle.handleLifecycleEvent(ON_START);
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
verify(pref).setChecked(true);
}
@Test
public void testReceiver_goingToAirplaneMode_shouldClearPreferenceSummary() {
final ContentResolver cr = mock(ContentResolver.class);