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

Commit 964d1074 authored by Salvador Martinez's avatar Salvador Martinez Committed by android-build-merger
Browse files

Merge "Only start tether when not already enabled" into pi-dev

am: f62f91b0

Change-Id: If28a47b85fab06484298196305e862759998a72f
parents 2332aad2 f62f91b0
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -91,10 +91,10 @@ public class WifiTetherSwitchBarController implements SwitchWidgetController.OnS

    @Override
    public boolean onSwitchToggled(boolean isChecked) {
        if (isChecked) {
            startTether();
        } else {
        if (!isChecked) {
            stopTether();
        } else if (!mWifiManager.isWifiApEnabled()) {
            startTether();
        }
        return true;
    }
+24 −3
Original line number Diff line number Diff line
@@ -18,7 +18,15 @@ package com.android.settings.wifi.tether;

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

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.content.Context;
@@ -68,7 +76,7 @@ public class WifiTetherSwitchBarControllerTest {
    }

    @Test
    public void testConstructor_airplaneModeOn_switchBarDisabled() {
    public void constructor_airplaneModeOn_switchBarDisabled() {
        Settings.Global.putInt(RuntimeEnvironment.application.getContentResolver(),
                Settings.Global.AIRPLANE_MODE_ON, 1);

@@ -79,7 +87,7 @@ public class WifiTetherSwitchBarControllerTest {
    }

    @Test
    public void testStartTether_fail_resetSwitchBar() {
    public void startTether_fail_resetSwitchBar() {
        when(mNetworkPolicyManager.getRestrictBackground()).thenReturn(false);

        mController.startTether();
@@ -90,7 +98,7 @@ public class WifiTetherSwitchBarControllerTest {
    }

    @Test
    public void testOnDataSaverChanged_setsEnabledCorrectly() {
    public void onDataSaverChanged_setsEnabledCorrectly() {
        assertThat(mSwitchBar.isEnabled()).isTrue();

        // try to turn data saver on
@@ -102,6 +110,19 @@ public class WifiTetherSwitchBarControllerTest {
        when(mNetworkPolicyManager.getRestrictBackground()).thenReturn(false);
        mController.onDataSaverChanged(false);
        assertThat(mSwitchBar.isEnabled()).isTrue();
    }

    @Test
    public void onSwitchToggled_onlyStartsTetherWhenNeeded() {
        when(mWifiManager.isWifiApEnabled()).thenReturn(true);
        mController.onSwitchToggled(true);

        verify(mConnectivityManager, never()).startTethering(anyInt(), anyBoolean(), any(), any());

        doReturn(false).when(mWifiManager).isWifiApEnabled();
        mController.onSwitchToggled(true);

        verify(mConnectivityManager, times(1))
                .startTethering(anyInt(), anyBoolean(), any(), any());
    }
}