From f50e9c24c119c8ed4fa0a5d83d08a9ee332d8911 Mon Sep 17 00:00:00 2001 From: Weng Su Date: Wed, 24 Mar 2021 21:52:56 +0800 Subject: [PATCH] Correct the defined value of Maximize compatibility - The return value defined by the Wi-Fi framework API is opposite to the UI Compatibility on: isBridgedModeOpportunisticShutdownEnabled() = false Compatibility off: isBridgedModeOpportunisticShutdownEnabled() = true - Need to use the reverse value from Settings UI to the Wi-Fi framework API. Bug: 183576049 Test: manual test atest -c WifiTetherMaximizeCompatibilityPreferenceControllerTest Change-Id: I731156806661bfbca14e7eaaa648a205a3d77b74 --- ...aximizeCompatibilityPreferenceController.java | 12 ++++++++++-- ...izeCompatibilityPreferenceControllerTest.java | 16 ++++++++-------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceController.java b/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceController.java index bc87d5cc5d0..41532d00e70 100644 --- a/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceController.java +++ b/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceController.java @@ -86,7 +86,11 @@ public class WifiTetherMaximizeCompatibilityPreferenceController extends if (mWifiManager.isBridgedApConcurrencySupported()) { final boolean isEnabled = config.isBridgedModeOpportunisticShutdownEnabled(); Log.d(TAG, "isBridgedModeOpportunisticShutdownEnabled:" + isEnabled); - return isEnabled; + // Because the return value defined by the Wi-Fi framework API is opposite to the UI. + // Compatibility on: isBridgedModeOpportunisticShutdownEnabled() = false + // Compatibility off: isBridgedModeOpportunisticShutdownEnabled() = true + // Need to return the reverse value. + return !isEnabled; } // If the BridgedAp Concurrency is not supported in early Pixel devices (e.g. Pixel 2~5), @@ -112,7 +116,11 @@ public class WifiTetherMaximizeCompatibilityPreferenceController extends SoftApConfiguration.BAND_2GHZ | SoftApConfiguration.BAND_5GHZ}; builder.setBands(bands); Log.d(TAG, "setBridgedModeOpportunisticShutdownEnabled:" + enabled); - builder.setBridgedModeOpportunisticShutdownEnabled(enabled); + // Because the defined value by the Wi-Fi framework API is opposite to the UI. + // Compatibility on: setBridgedModeOpportunisticShutdownEnabled(false) + // Compatibility off: setBridgedModeOpportunisticShutdownEnabled(true) + // Need to set the reverse value. + builder.setBridgedModeOpportunisticShutdownEnabled(!enabled); } else { int band = enabled ? SoftApConfiguration.BAND_2GHZ | SoftApConfiguration.BAND_5GHZ diff --git a/tests/unit/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceControllerTest.java b/tests/unit/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceControllerTest.java index a2b99bf614a..072978040b9 100644 --- a/tests/unit/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceControllerTest.java +++ b/tests/unit/src/com/android/settings/wifi/tether/WifiTetherMaximizeCompatibilityPreferenceControllerTest.java @@ -121,20 +121,20 @@ public class WifiTetherMaximizeCompatibilityPreferenceControllerTest { } @Test - public void isMaximizeCompatibilityEnabled_concurrencySupportedAndEnabled_returnTure() { + public void isMaximizeCompatibilityEnabled_concurrencySupportedAndEnabled_returnFalse() { // The preconditions are ready in setup(). - assertThat(mController.isMaximizeCompatibilityEnabled()).isEqualTo(true); + assertThat(mController.isMaximizeCompatibilityEnabled()).isEqualTo(false); } @Test - public void isMaximizeCompatibilityEnabled_concurrencySupportedAndDisabled_returnFalse() { + public void isMaximizeCompatibilityEnabled_concurrencySupportedAndDisabled_returnTrue() { SoftApConfiguration config = new SoftApConfiguration.Builder() .setBridgedModeOpportunisticShutdownEnabled(false) .build(); doReturn(config).when(mWifiManager).getSoftApConfiguration(); - assertThat(mController.isMaximizeCompatibilityEnabled()).isEqualTo(false); + assertThat(mController.isMaximizeCompatibilityEnabled()).isEqualTo(true); } @Test @@ -171,25 +171,25 @@ public class WifiTetherMaximizeCompatibilityPreferenceControllerTest { } @Test - public void setupMaximizeCompatibility_concurrencySupportedAndDisabled_setDisabled() { + public void setupMaximizeCompatibility_concurrencySupportedAndDisabled_setEnabled() { // The precondition of the concurrency supported is ready in setup(). mController.onPreferenceChange(mPreference, false); SoftApConfiguration.Builder builder = new SoftApConfiguration.Builder(); mController.setupMaximizeCompatibility(builder); - assertThat(builder.build().isBridgedModeOpportunisticShutdownEnabled()).isEqualTo(false); + assertThat(builder.build().isBridgedModeOpportunisticShutdownEnabled()).isEqualTo(true); } @Test - public void setupMaximizeCompatibility_concurrencySupportedAndEnabled_setEnabled() { + public void setupMaximizeCompatibility_concurrencySupportedAndEnabled_setDisabled() { // The precondition of the concurrency supported is ready in setup(). mController.onPreferenceChange(mPreference, true); SoftApConfiguration.Builder builder = new SoftApConfiguration.Builder(); mController.setupMaximizeCompatibility(builder); - assertThat(builder.build().isBridgedModeOpportunisticShutdownEnabled()).isEqualTo(true); + assertThat(builder.build().isBridgedModeOpportunisticShutdownEnabled()).isEqualTo(false); } @Test