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

Commit 679153be authored by Weng Su's avatar Weng Su
Browse files

Mock WifiP2pManager.class for WifiP2pSettingsTest

Bug: 214938188
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=WifiP2pSettingsTest

Change-Id: I21bfc1c8303970437ae2641ed0f2f9c16f09b33f
parent 7dd97c70
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ import com.android.settings.testutils.shadow.ShadowInteractionJankMonitor;
import com.android.settingslib.core.AbstractPreferenceController;

import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -68,7 +67,7 @@ public class WifiP2pSettingsTest {

    private Context mContext;
    private FragmentActivity mActivity;
    private WifiP2pSettings mFragment;
    private TestWifiP2pSettings mFragment;

    @Mock
    public WifiP2pManager mWifiP2pManager;
@@ -86,8 +85,10 @@ public class WifiP2pSettingsTest {
    public void setUp() {
        MockitoAnnotations.initMocks(this);
        mContext = RuntimeEnvironment.application;
        TestWifiP2pSettings.sMockWifiP2pManager = mWifiP2pManager;

        mActivity = Robolectric.setupActivity(FragmentActivity.class);
        mFragment = new WifiP2pSettings();
        mFragment = new TestWifiP2pSettings();
        mFragment.mWifiP2pManager = mWifiP2pManager;
        doReturn(mChannel).when(mWifiP2pManager).initialize(any(), any(), any());
        FragmentManager fragmentManager = mActivity.getSupportFragmentManager();
@@ -504,7 +505,6 @@ public class WifiP2pSettingsTest {
    }

    @Test
    @Ignore
    public void onActivityCreate_withNullP2pManager_shouldGetP2pManagerAgain() {
        mFragment.mChannel = null; // Reset channel to re-test onActivityCreated flow
        mFragment.mWifiP2pManager = null;
@@ -542,4 +542,13 @@ public class WifiP2pSettingsTest {
        wifiP2pDevice.deviceName = "testName";
        mWifiP2pPeer.device = wifiP2pDevice;
    }

    public static class TestWifiP2pSettings extends WifiP2pSettings {
        static WifiP2pManager sMockWifiP2pManager;
        @Override
        protected Object getSystemService(final String name) {
            if (Context.WIFI_P2P_SERVICE.equals(name)) return sMockWifiP2pManager;
            return getActivity().getSystemService(name);
        }
    }
}