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

Commit 7fb389c5 authored by Jack Yu's avatar Jack Yu
Browse files

Sent deactivation reason shutdown properly

When tear down is due to airplane mode or shutdown,
call deactivate data with reason shutdown.

Fix: 228561336
Test: Manual && atest DataNetworkTest
Change-Id: Id11c5591ad249c7402ac3b775e3d3682dd2cbeee
parent 3c8a478a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2268,9 +2268,9 @@ public class DataNetwork extends StateMachine {
            mDataNetworkCallback.onTrackNetworkUnwanted(this);
        }

        // TODO: Need to support DataService.REQUEST_REASON_SHUTDOWN
        mDataServiceManagers.get(mTransport).deactivateDataCall(mCid.get(mTransport),
                DataService.REQUEST_REASON_NORMAL,
                reason == TEAR_DOWN_REASON_AIRPLANE_MODE_ON ? DataService.REQUEST_REASON_SHUTDOWN
                        : DataService.REQUEST_REASON_NORMAL,
                obtainMessage(EVENT_DEACTIVATE_DATA_NETWORK_RESPONSE));
        mDataCallSessionStats.setDeactivateDataCallReason(DataService.REQUEST_REASON_NORMAL);
        mInvokedDataDeactivation = true;
+13 −0
Original line number Diff line number Diff line
@@ -577,6 +577,19 @@ public class DataNetworkTest extends TelephonyTest {
                .isEqualTo(AccessNetworkConstants.TRANSPORT_TYPE_WWAN);
    }

    @Test
    public void testAirplaneModeShutdownDeactivateData() throws Exception {
        testCreateDataNetwork();

        mDataNetworkUT.tearDown(DataNetwork.TEAR_DOWN_REASON_AIRPLANE_MODE_ON);
        processAllMessages();

        // Make sure REQUEST_REASON_SHUTDOWN is sent when tear down reason is APM.
        verify(mMockedWwanDataServiceManager).deactivateDataCall(eq(123),
                eq(DataService.REQUEST_REASON_SHUTDOWN), any(Message.class));
    }


    @Test
    public void testCreateDataNetworkOnIwlan() throws Exception {
        doReturn(mIwlanNetworkRegistrationInfo).when(mServiceState).getNetworkRegistrationInfo(