diff options
author | Bob Wang <ziyiw@google.com> | 2024-04-02 18:45:24 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2024-04-02 18:45:24 +0000 |
commit | 39ee6d184646d01d39b41ea86918675a09037453 (patch) | |
tree | 7b391c0485e538ba9e6973fe716b6da434913e39 | |
parent | 5626385c46fb5a703b4e34f588a7efc878cb25bf (diff) | |
parent | ed2939ce30f1734f52b6f8fa5bc3c3fd06ddf2f3 (diff) | |
download | Nfc-39ee6d184646d01d39b41ea86918675a09037453.tar.gz |
Merge "Test : New Test Cases for IsAntennaBlockedAlertDisabled" into main
-rw-r--r-- | src/com/android/nfc/DeviceConfigFacade.java | 10 | ||||
-rw-r--r-- | tests/unit/src/com/android/nfc/DeviceConfigFacadeTest.java | 31 |
2 files changed, 29 insertions, 12 deletions
diff --git a/src/com/android/nfc/DeviceConfigFacade.java b/src/com/android/nfc/DeviceConfigFacade.java index f7af0d9d..4f7df10c 100644 --- a/src/com/android/nfc/DeviceConfigFacade.java +++ b/src/com/android/nfc/DeviceConfigFacade.java @@ -19,6 +19,7 @@ package com.android.nfc; import android.content.Context; import android.os.Handler; import android.provider.DeviceConfig; +import androidx.annotation.VisibleForTesting; /** * This class allows getting all configurable flags from DeviceConfig. @@ -34,14 +35,15 @@ public class DeviceConfigFacade { private boolean mAntennaBlockedAlertEnabled; private static DeviceConfigFacade sInstance; - public static DeviceConfigFacade getInstance() { + public static DeviceConfigFacade getInstance(Context context, Handler handler) { + if (sInstance == null) { + sInstance = new DeviceConfigFacade(context, handler); + } return sInstance; } + @VisibleForTesting public DeviceConfigFacade(Context context, Handler handler) { - if (sInstance != null) { - throw new IllegalStateException("DeviceConfigFacade should be a singleton"); - } mContext = context; updateDeviceConfigFlags(); DeviceConfig.addOnPropertiesChangedListener( diff --git a/tests/unit/src/com/android/nfc/DeviceConfigFacadeTest.java b/tests/unit/src/com/android/nfc/DeviceConfigFacadeTest.java index 551d7d10..b6574a0c 100644 --- a/tests/unit/src/com/android/nfc/DeviceConfigFacadeTest.java +++ b/tests/unit/src/com/android/nfc/DeviceConfigFacadeTest.java @@ -48,6 +48,7 @@ public class DeviceConfigFacadeTest { private boolean mNfcSupported; private MockitoSession mStaticMockSession; private DeviceConfigFacade mDeviceConfigFacade; + private DeviceConfigFacade mDeviceConfigFacadeFalse; @Before public void setUp() throws Exception { @@ -62,14 +63,24 @@ public class DeviceConfigFacadeTest { return; } mNfcSupported = true; + Handler handler = mock(Handler.class); + InstrumentationRegistry.getInstrumentation().runOnMainSync( + () -> mDeviceConfigFacade = new DeviceConfigFacade(getMockedContext( + true, context), handler)); + Assert.assertNotNull(mDeviceConfigFacade); + InstrumentationRegistry.getInstrumentation().runOnMainSync( + () -> mDeviceConfigFacadeFalse = new DeviceConfigFacade(getMockedContext( + false, context), handler)); + Assert.assertNotNull(mDeviceConfigFacadeFalse); + } + private Context getMockedContext(boolean isAntenaEnabled, Context context) { Resources mockResources = mock(Resources.class); when(mockResources.getBoolean(eq(R.bool.enable_antenna_blocked_alert))) - .thenReturn(true); - + .thenReturn(isAntenaEnabled); - Context mockContext = new ContextWrapper(context) { + return new ContextWrapper(context) { @Override public Resources getResources() { @@ -77,11 +88,6 @@ public class DeviceConfigFacadeTest { return mockResources; } }; - - Handler handler = mock(Handler.class); - InstrumentationRegistry.getInstrumentation().runOnMainSync( - () -> mDeviceConfigFacade = new DeviceConfigFacade(mockContext, handler)); - Assert.assertNotNull(mDeviceConfigFacade); } @After @@ -97,4 +103,13 @@ public class DeviceConfigFacadeTest { Log.d(TAG, "isAlertEnabled -" + isAlertEnabled); Assert.assertTrue(isAlertEnabled); } + + @Test + public void testIsAntennaBlockedAlertDisabled() { + if (!mNfcSupported) return; + + boolean isAlertEnabled = mDeviceConfigFacadeFalse.isAntennaBlockedAlertEnabled(); + Log.d(TAG, "isAlertEnabled -" + isAlertEnabled); + Assert.assertFalse(isAlertEnabled); + } } |