Loading src/com/android/settings/nfc/NfcEnabler.java +1 −15 Original line number Diff line number Diff line Loading @@ -18,9 +18,6 @@ package com.android.settings.nfc; import android.content.Context; import android.nfc.NfcAdapter; import android.provider.Settings; import androidx.annotation.VisibleForTesting; import com.android.settingslib.widget.MainSwitchPreference; Loading @@ -41,7 +38,7 @@ public class NfcEnabler extends BaseNfcEnabler { switch (newState) { case NfcAdapter.STATE_OFF: mPreference.updateStatus(false); mPreference.setEnabled(isToggleable()); mPreference.setEnabled(true); break; case NfcAdapter.STATE_ON: mPreference.updateStatus(true); Loading @@ -57,15 +54,4 @@ public class NfcEnabler extends BaseNfcEnabler { break; } } @VisibleForTesting boolean isToggleable() { if (NfcPreferenceController.isToggleableInAirplaneMode(mContext) || !NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)) { return true; } final int airplaneMode = Settings.Global.getInt( mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 0); return airplaneMode != 1; } } src/com/android/settings/nfc/NfcPreferenceController.java +0 −13 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.content.Intent; import android.content.IntentFilter; import android.net.Uri; import android.nfc.NfcAdapter; import android.provider.Settings; import android.util.Log; import android.widget.Switch; Loading Loading @@ -128,18 +127,6 @@ public class NfcPreferenceController extends TogglePreferenceController } } public static boolean shouldTurnOffNFCInAirplaneMode(Context context) { final String airplaneModeRadios = Settings.Global.getString(context.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS); return airplaneModeRadios != null && airplaneModeRadios.contains(Settings.Global.RADIO_NFC); } public static boolean isToggleableInAirplaneMode(Context context) { final String toggleable = Settings.Global.getString(context.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS); return toggleable != null && toggleable.contains(Settings.Global.RADIO_NFC); } /** * Listener for background changes to NFC. * Loading tests/robotests/src/com/android/settings/nfc/NfcEnablerTest.java +6 −50 Original line number Diff line number Diff line Loading @@ -16,15 +16,12 @@ package com.android.settings.nfc; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.content.ContentResolver; import android.content.Context; import android.nfc.NfcAdapter; import android.provider.Settings; import com.android.settingslib.widget.MainSwitchPreference; Loading Loading @@ -52,55 +49,14 @@ public class NfcEnablerTest { mNfcEnabler = spy(new NfcEnabler(mContext, mNfcPreference)); } @Test public void isToggleable_AirplaneModeOff_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 0); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcNotInAirplaneModeRadio_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, ""); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcToggleable_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcNotToggleable_shouldReturnFalse() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, ""); assertThat(mNfcEnabler.isToggleable()).isFalse(); } @Test public void handleNfcStateChanged_stateOff_shouldCheckIfPreferenceEnableState() { mNfcEnabler.handleNfcStateChanged(NfcAdapter.STATE_OFF); verify(mNfcPreference).updateStatus(false); verify(mNfcPreference).setEnabled(true); verify(mNfcEnabler).isToggleable(); mNfcEnabler.handleNfcStateChanged(NfcAdapter.STATE_ON); verify(mNfcPreference).updateStatus(true); verify(mNfcPreference, times(2)).setEnabled(true); } } tests/robotests/src/com/android/settings/nfc/NfcPreferenceControllerTest.java +0 −39 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import android.content.Intent; import android.nfc.NfcAdapter; import android.nfc.NfcManager; import android.os.UserManager; import android.provider.Settings; import androidx.preference.PreferenceScreen; Loading Loading @@ -188,44 +187,6 @@ public class NfcPreferenceControllerTest { assertThat(mNfcController.hasAsyncUpdate()).isTrue(); } @Test public void isToggleableInAirplaneMode_containNfc_shouldReturnTrue() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 1); assertThat(NfcPreferenceController.isToggleableInAirplaneMode(mContext)).isTrue(); } @Test public void isToggleableInAirplaneMode_withoutNfc_shouldReturnFalse() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, "null"); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 1); assertThat(NfcPreferenceController.isToggleableInAirplaneMode(mContext)).isFalse(); } @Test public void shouldTurnOffNFCInAirplaneMode_airplaneModeRadiosContainsNfc_shouldReturnTrue() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); assertThat(NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)).isTrue(); } @Test public void shouldTurnOffNFCInAirplaneMode_airplaneModeRadiosWithoutNfc_shouldReturnFalse() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS, ""); assertThat(NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)).isFalse(); } @Test public void ncfSliceWorker_nfcBroadcast_noExtra_sliceDoesntUpdate() { final NfcSliceWorker worker = spy( Loading Loading
src/com/android/settings/nfc/NfcEnabler.java +1 −15 Original line number Diff line number Diff line Loading @@ -18,9 +18,6 @@ package com.android.settings.nfc; import android.content.Context; import android.nfc.NfcAdapter; import android.provider.Settings; import androidx.annotation.VisibleForTesting; import com.android.settingslib.widget.MainSwitchPreference; Loading @@ -41,7 +38,7 @@ public class NfcEnabler extends BaseNfcEnabler { switch (newState) { case NfcAdapter.STATE_OFF: mPreference.updateStatus(false); mPreference.setEnabled(isToggleable()); mPreference.setEnabled(true); break; case NfcAdapter.STATE_ON: mPreference.updateStatus(true); Loading @@ -57,15 +54,4 @@ public class NfcEnabler extends BaseNfcEnabler { break; } } @VisibleForTesting boolean isToggleable() { if (NfcPreferenceController.isToggleableInAirplaneMode(mContext) || !NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)) { return true; } final int airplaneMode = Settings.Global.getInt( mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 0); return airplaneMode != 1; } }
src/com/android/settings/nfc/NfcPreferenceController.java +0 −13 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.content.Intent; import android.content.IntentFilter; import android.net.Uri; import android.nfc.NfcAdapter; import android.provider.Settings; import android.util.Log; import android.widget.Switch; Loading Loading @@ -128,18 +127,6 @@ public class NfcPreferenceController extends TogglePreferenceController } } public static boolean shouldTurnOffNFCInAirplaneMode(Context context) { final String airplaneModeRadios = Settings.Global.getString(context.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS); return airplaneModeRadios != null && airplaneModeRadios.contains(Settings.Global.RADIO_NFC); } public static boolean isToggleableInAirplaneMode(Context context) { final String toggleable = Settings.Global.getString(context.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS); return toggleable != null && toggleable.contains(Settings.Global.RADIO_NFC); } /** * Listener for background changes to NFC. * Loading
tests/robotests/src/com/android/settings/nfc/NfcEnablerTest.java +6 −50 Original line number Diff line number Diff line Loading @@ -16,15 +16,12 @@ package com.android.settings.nfc; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.content.ContentResolver; import android.content.Context; import android.nfc.NfcAdapter; import android.provider.Settings; import com.android.settingslib.widget.MainSwitchPreference; Loading Loading @@ -52,55 +49,14 @@ public class NfcEnablerTest { mNfcEnabler = spy(new NfcEnabler(mContext, mNfcPreference)); } @Test public void isToggleable_AirplaneModeOff_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 0); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcNotInAirplaneModeRadio_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, ""); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcToggleable_shouldReturnTrue() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); assertThat(mNfcEnabler.isToggleable()).isTrue(); } @Test public void isToggleable_AirplaneModeOnNfcNotToggleable_shouldReturnFalse() { final ContentResolver contentResolver = mContext.getContentResolver(); Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 1); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putString(contentResolver, Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, ""); assertThat(mNfcEnabler.isToggleable()).isFalse(); } @Test public void handleNfcStateChanged_stateOff_shouldCheckIfPreferenceEnableState() { mNfcEnabler.handleNfcStateChanged(NfcAdapter.STATE_OFF); verify(mNfcPreference).updateStatus(false); verify(mNfcPreference).setEnabled(true); verify(mNfcEnabler).isToggleable(); mNfcEnabler.handleNfcStateChanged(NfcAdapter.STATE_ON); verify(mNfcPreference).updateStatus(true); verify(mNfcPreference, times(2)).setEnabled(true); } }
tests/robotests/src/com/android/settings/nfc/NfcPreferenceControllerTest.java +0 −39 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import android.content.Intent; import android.nfc.NfcAdapter; import android.nfc.NfcManager; import android.os.UserManager; import android.provider.Settings; import androidx.preference.PreferenceScreen; Loading Loading @@ -188,44 +187,6 @@ public class NfcPreferenceControllerTest { assertThat(mNfcController.hasAsyncUpdate()).isTrue(); } @Test public void isToggleableInAirplaneMode_containNfc_shouldReturnTrue() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, Settings.Global.RADIO_NFC); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 1); assertThat(NfcPreferenceController.isToggleableInAirplaneMode(mContext)).isTrue(); } @Test public void isToggleableInAirplaneMode_withoutNfc_shouldReturnFalse() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, "null"); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 1); assertThat(NfcPreferenceController.isToggleableInAirplaneMode(mContext)).isFalse(); } @Test public void shouldTurnOffNFCInAirplaneMode_airplaneModeRadiosContainsNfc_shouldReturnTrue() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS, Settings.Global.RADIO_NFC); assertThat(NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)).isTrue(); } @Test public void shouldTurnOffNFCInAirplaneMode_airplaneModeRadiosWithoutNfc_shouldReturnFalse() { Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_RADIOS, ""); assertThat(NfcPreferenceController.shouldTurnOffNFCInAirplaneMode(mContext)).isFalse(); } @Test public void ncfSliceWorker_nfcBroadcast_noExtra_sliceDoesntUpdate() { final NfcSliceWorker worker = spy( Loading