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

Commit db8e3904 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix crash when LPA is unavailable." into oc-dr1-dev

parents eae86190 55d04c27
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -483,7 +483,7 @@ public class EuiccConnector extends StateMachine implements ServiceConnection {
                }
                return HANDLED;
            } else if (isEuiccCommand(message.what)) {
                BaseEuiccCommandCallback callback = (BaseEuiccCommandCallback) message.obj;
                BaseEuiccCommandCallback callback = getCallback(message);
                callback.onEuiccServiceUnavailable();
                return HANDLED;
            }
+21 −0
Original line number Diff line number Diff line
@@ -128,6 +128,27 @@ public class EuiccConnectorTest extends TelephonyTest {
        assertTrue(called.get());
    }

    @Test
    public void testInitialState_switchCommandRejected() {
        prepareEuiccApp(false /* hasPermission */, false /* requiresBindPermission */,
                false /* hasPriority */);
        mConnector = new EuiccConnector(mContext, mLooper.getLooper());
        final AtomicBoolean called = new AtomicBoolean(false);
        mConnector.switchToSubscription("12345", true, new EuiccConnector.SwitchCommandCallback() {
            @Override
            public void onSwitchComplete(int result) {
                fail("Command should have failed");
            }

            @Override
            public void onEuiccServiceUnavailable() {
                assertTrue("Callback called twice", called.compareAndSet(false, true));
            }
        });
        mLooper.dispatchAll();
        assertTrue(called.get());
    }

    @Test
    public void testInitialState_available() {
        prepareEuiccApp(true /* hasPermission */, true /* requiresBindPermission */,