Loading src/java/com/android/internal/telephony/RIL.java +18 −3 Original line number Diff line number Diff line Loading @@ -104,6 +104,8 @@ import android.telephony.data.DataCallResponse; import android.telephony.data.DataCallResponse.HandoverFailureMode; import android.telephony.data.DataProfile; import android.telephony.data.DataService; import android.telephony.data.Qos; import android.telephony.data.QosSession; import android.telephony.emergency.EmergencyNumber; import android.text.TextUtils; import android.util.Log; Loading Loading @@ -2944,7 +2946,13 @@ public class RIL extends BaseCommands implements CommandsInterface { if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest)); try { if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_6)) { android.hardware.radio.V1_6.IRadio radioProxy16 = (android.hardware.radio.V1_6.IRadio) radioProxy; radioProxy16.getDataCallList_1_6(rr.mSerial); } else { radioProxy.getDataCallList(rr.mSerial); } } catch (RemoteException | RuntimeException e) { handleRadioProxyExceptionForRR(rr, "getDataCallList", e); } Loading Loading @@ -7197,7 +7205,7 @@ public class RIL extends BaseCommands implements CommandsInterface { } /** * Convert SetupDataCallResult defined in 1.0, 1.4, or 1.5 types.hal into DataCallResponse * Convert SetupDataCallResult defined in 1.0, 1.4, 1.5 or 1.6 types.hal into DataCallResponse * @param dcResult setup data call result * @return converted DataCallResponse object */ Loading @@ -7213,6 +7221,7 @@ public class RIL extends BaseCommands implements CommandsInterface { String[] dnses = null; String[] gateways = null; String[] pcscfs = null; Qos defaultQos = null; @HandoverFailureMode int handoverFailureMode = DataCallResponse.HANDOVER_FAILURE_MODE_LEGACY; Loading @@ -7220,6 +7229,7 @@ public class RIL extends BaseCommands implements CommandsInterface { int pduSessionId = DataCallResponse.PDU_SESSION_ID_NOT_SET; List<LinkAddress> laList = new ArrayList<>(); List<QosSession> qosSessions = new ArrayList<>(); if (dcResult instanceof android.hardware.radio.V1_0.SetupDataCallResult) { final android.hardware.radio.V1_0.SetupDataCallResult result = Loading Loading @@ -7307,6 +7317,9 @@ public class RIL extends BaseCommands implements CommandsInterface { mtuV6 = result.mtuV6; handoverFailureMode = result.handoverFailureMode; pduSessionId = result.pduSessionId; defaultQos = Qos.create(result.defaultQos); qosSessions = result.qosSessions.stream().map(session -> QosSession.create(session)).collect(Collectors.toList()); } else { Rlog.e(RILJ_LOG_TAG, "Unsupported SetupDataCallResult " + dcResult); return null; Loading Loading @@ -7373,6 +7386,8 @@ public class RIL extends BaseCommands implements CommandsInterface { .setMtuV6(mtuV6) .setHandoverFailureMode(handoverFailureMode) .setPduSessionId(pduSessionId) .setDefaultQos(defaultQos) .setQosSessions(qosSessions) .build(); } Loading src/java/com/android/internal/telephony/dataconnection/DataConnection.java +12 −1 Original line number Diff line number Diff line Loading @@ -65,6 +65,8 @@ import android.telephony.data.DataCallResponse.HandoverFailureMode; import android.telephony.data.DataProfile; import android.telephony.data.DataService; import android.telephony.data.DataServiceCallback; import android.telephony.data.Qos; import android.telephony.data.QosSession; import android.text.TextUtils; import android.util.LocalLog; import android.util.Pair; Loading Loading @@ -291,6 +293,8 @@ public class DataConnection extends StateMachine { private boolean mIsSuspended; private int mDownlinkBandwidth = 14; private int mUplinkBandwidth = 14; private Qos mDefaultQos = null; private List<QosSession> mQosSessions = new ArrayList<>(); /** The corresponding network agent for this data connection. */ private DcNetworkAgent mNetworkAgent; Loading Loading @@ -588,6 +592,11 @@ public class DataConnection extends StateMachine { return mPduSessionId; } public void updateQosParameters(DataCallResponse response) { mDefaultQos = response.getDefaultQos(); mQosSessions = response.getQosSessions(); } @VisibleForTesting public UpdateLinkPropertyResult updateLinkProperty(DataCallResponse newState) { UpdateLinkPropertyResult result = new UpdateLinkPropertyResult(mLinkProperties); Loading Loading @@ -1197,7 +1206,7 @@ public class DataConnection extends StateMachine { if (DBG) log("onSetupConnectionCompleted received successful DataCallResponse"); mCid = response.getId(); updatePcscfAddr(response); updateQosParameters(response); result = updateLinkProperty(response).setupResult; setPduSessionId(response.getPduSessionId()); Loading Loading @@ -3457,6 +3466,8 @@ public class DataConnection extends StateMachine { pw.println("mUnmeteredOverride=" + mUnmeteredOverride); pw.println("mDownlinkBandwidth" + mDownlinkBandwidth); pw.println("mUplinkBandwidth=" + mUplinkBandwidth); pw.println("mDefaultQos=" + mDefaultQos); pw.println("mQosSessions=" + mQosSessions); pw.println("disallowedApnTypes=" + ApnSetting.getApnTypesStringFromBitmask(getDisallowedApnTypes())); pw.println("mInstanceNumber=" + mInstanceNumber); Loading src/java/com/android/internal/telephony/dataconnection/DcController.java +1 −0 Original line number Diff line number Diff line Loading @@ -303,6 +303,7 @@ public class DcController extends Handler { // Its active so update the DataConnections link properties UpdateLinkPropertyResult result = dc.updateLinkProperty(newState); dc.updateQosParameters(newState); if (result.oldLp.equals(result.newLp)) { if (DBG) log("onDataStateChanged: no change"); } else { Loading tests/telephonytests/src/com/android/internal/telephony/RILTest.java +111 −0 Original line number Diff line number Diff line Loading @@ -156,6 +156,11 @@ import android.telephony.TelephonyManager; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; import android.telephony.data.DataProfile; import android.telephony.data.EpsQos; import android.telephony.data.NrQos; import android.telephony.data.Qos; import android.telephony.data.QosFilter; import android.telephony.data.QosSession; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; Loading Loading @@ -2175,6 +2180,7 @@ public class RILTest extends TelephonyTest { .setMtu(1500) .setMtuV4(1500) .setMtuV6(1500) .setQosSessions(new ArrayList<>()) .build(); assertEquals(response, RIL.convertDataCallResult(result10)); Loading Loading @@ -2248,9 +2254,114 @@ public class RILTest extends TelephonyTest { .setMtu(3000) .setMtuV4(1500) .setMtuV6(3000) .setQosSessions(new ArrayList<>()) .build(); assertEquals(response, RIL.convertDataCallResult(result15)); // Test V1.6 SetupDataCallResult android.hardware.radio.V1_6.SetupDataCallResult result16 = new android.hardware.radio.V1_6.SetupDataCallResult(); result16.cause = android.hardware.radio.V1_4.DataCallFailCause.NONE; result16.suggestedRetryTime = -1; result16.cid = 0; result16.active = android.hardware.radio.V1_4.DataConnActiveStatus.ACTIVE; result16.type = android.hardware.radio.V1_4.PdpProtocolType.IPV4V6; result16.ifname = "ifname"; result16.addresses = new ArrayList<>(Arrays.asList(la1, la2)); result16.dnses = new ArrayList<>(Arrays.asList("10.0.2.3", "fd00:976a::9")); result16.gateways = new ArrayList<>(Arrays.asList("10.0.2.15", "fe80::2")); result16.pcscf = new ArrayList<>(Arrays.asList( "fd00:976a:c206:20::6", "fd00:976a:c206:20::9", "fd00:976a:c202:1d::9")); result16.mtuV4 = 1500; result16.mtuV6 = 3000; result16.handoverFailureMode = android.hardware.radio.V1_6.HandoverFailureMode.LEGACY; // Build android.hardware.radio.V1_6.EpsQos android.hardware.radio.V1_6.EpsQos halEpsQos = new android.hardware.radio.V1_6.EpsQos(); halEpsQos.qci = 4; halEpsQos.downlink.maxBitrateKbps = 4; halEpsQos.downlink.guaranteedBitrateKbps = 7; halEpsQos.uplink.maxBitrateKbps = 5; halEpsQos.uplink.guaranteedBitrateKbps = 8; result16.defaultQos.eps(halEpsQos); // android.hardware.radio.V1_6.PortRange android.hardware.radio.V1_6.PortRange localPort = new android.hardware.radio.V1_6.PortRange(); android.hardware.radio.V1_6.PortRange remotePort = new android.hardware.radio.V1_6.PortRange(); localPort.start = 123; localPort.end = 123; remotePort.start = 223; remotePort.end = 223; // android.hardware.radio.V1_6.QosFilter android.hardware.radio.V1_6.QosFilter halQosFilter = new android.hardware.radio.V1_6.QosFilter(); halQosFilter.localAddresses = new ArrayList<>(Arrays.asList("122.22.22.22")); halQosFilter.remoteAddresses = new ArrayList<>(Arrays.asList("144.44.44.44")); halQosFilter.localPort.range(localPort); halQosFilter.remotePort.range(remotePort); halQosFilter.protocol = android.hardware.radio.V1_6.QosProtocol.UDP; halQosFilter.tos.value((byte)7); halQosFilter.flowLabel.value(987); halQosFilter.spi.value(678); halQosFilter.direction = android.hardware.radio.V1_6.QosFilterDirection.BIDIRECTIONAL; halQosFilter.precedence = 45; // android.hardware.radio.V1_6.QosSession android.hardware.radio.V1_6.QosSession halQosSession = new android.hardware.radio.V1_6.QosSession(); halQosSession.qosSessionId = 1234; halQosSession.qos.eps(halEpsQos); halQosSession.qosFilters = new ArrayList<>(Arrays.asList(halQosFilter)); result16.qosSessions = new ArrayList<>(Arrays.asList(halQosSession)); EpsQos epsQos = new EpsQos(halEpsQos); QosFilter qosFilter = new QosFilter( Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("122.22.22.22"), 32)), Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("144.44.44.44"), 32)), new QosFilter.PortRange(123, 123), new QosFilter.PortRange(223, 223), QosFilter.QOS_PROTOCOL_UDP, 7, 987, 678, QosFilter.QOS_FILTER_DIRECTION_BIDIRECTIONAL, 45); ArrayList<QosFilter> qosFilters = new ArrayList<>(); ArrayList<QosSession> qosSessions = new ArrayList<>(); qosFilters.add(qosFilter); QosSession qosSession = new QosSession(1234, epsQos, qosFilters); qosSessions.add(qosSession); response = new DataCallResponse.Builder() .setCause(0) .setId(0) .setLinkStatus(2) .setProtocolType(ApnSetting.PROTOCOL_IPV4V6) .setInterfaceName("ifname") .setAddresses(Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("10.0.2.15"), 32), new LinkAddress("2607:fb90:a620:651d:eabe:f8da:c107:44be/64"))) .setDnsAddresses(Arrays.asList(InetAddresses.parseNumericAddress("10.0.2.3"), InetAddresses.parseNumericAddress("fd00:976a::9"))) .setGatewayAddresses(Arrays.asList(InetAddresses.parseNumericAddress("10.0.2.15"), InetAddresses.parseNumericAddress("fe80::2"))) .setPcscfAddresses(Arrays.asList( InetAddresses.parseNumericAddress("fd00:976a:c206:20::6"), InetAddresses.parseNumericAddress("fd00:976a:c206:20::9"), InetAddresses.parseNumericAddress("fd00:976a:c202:1d::9"))) .setMtu(3000) .setMtuV4(1500) .setMtuV6(3000) .setHandoverFailureMode(DataCallResponse.HANDOVER_FAILURE_MODE_LEGACY) .setDefaultQos(epsQos) .setQosSessions(qosSessions) .build(); assertEquals(response, RIL.convertDataCallResult(result16)); } @Test Loading tests/telephonytests/src/com/android/internal/telephony/dataconnection/DataCallResponseTest.java +4 −0 Original line number Diff line number Diff line Loading @@ -27,9 +27,11 @@ import android.net.LinkAddress; import android.os.Parcel; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; import android.telephony.data.EpsQos; import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.SmallTest; import java.util.ArrayList; import java.util.Arrays; public class DataCallResponseTest extends AndroidTestCase { Loading @@ -51,6 +53,8 @@ public class DataCallResponseTest extends AndroidTestCase { Arrays.asList(InetAddresses.parseNumericAddress(FAKE_PCSCF_ADDRESS))) .setMtuV4(1440) .setMtuV6(1440) .setDefaultQos(new EpsQos()) .setQosSessions(new ArrayList<>()) .build(); Parcel p = Parcel.obtain(); Loading Loading
src/java/com/android/internal/telephony/RIL.java +18 −3 Original line number Diff line number Diff line Loading @@ -104,6 +104,8 @@ import android.telephony.data.DataCallResponse; import android.telephony.data.DataCallResponse.HandoverFailureMode; import android.telephony.data.DataProfile; import android.telephony.data.DataService; import android.telephony.data.Qos; import android.telephony.data.QosSession; import android.telephony.emergency.EmergencyNumber; import android.text.TextUtils; import android.util.Log; Loading Loading @@ -2944,7 +2946,13 @@ public class RIL extends BaseCommands implements CommandsInterface { if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest)); try { if (mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_6)) { android.hardware.radio.V1_6.IRadio radioProxy16 = (android.hardware.radio.V1_6.IRadio) radioProxy; radioProxy16.getDataCallList_1_6(rr.mSerial); } else { radioProxy.getDataCallList(rr.mSerial); } } catch (RemoteException | RuntimeException e) { handleRadioProxyExceptionForRR(rr, "getDataCallList", e); } Loading Loading @@ -7197,7 +7205,7 @@ public class RIL extends BaseCommands implements CommandsInterface { } /** * Convert SetupDataCallResult defined in 1.0, 1.4, or 1.5 types.hal into DataCallResponse * Convert SetupDataCallResult defined in 1.0, 1.4, 1.5 or 1.6 types.hal into DataCallResponse * @param dcResult setup data call result * @return converted DataCallResponse object */ Loading @@ -7213,6 +7221,7 @@ public class RIL extends BaseCommands implements CommandsInterface { String[] dnses = null; String[] gateways = null; String[] pcscfs = null; Qos defaultQos = null; @HandoverFailureMode int handoverFailureMode = DataCallResponse.HANDOVER_FAILURE_MODE_LEGACY; Loading @@ -7220,6 +7229,7 @@ public class RIL extends BaseCommands implements CommandsInterface { int pduSessionId = DataCallResponse.PDU_SESSION_ID_NOT_SET; List<LinkAddress> laList = new ArrayList<>(); List<QosSession> qosSessions = new ArrayList<>(); if (dcResult instanceof android.hardware.radio.V1_0.SetupDataCallResult) { final android.hardware.radio.V1_0.SetupDataCallResult result = Loading Loading @@ -7307,6 +7317,9 @@ public class RIL extends BaseCommands implements CommandsInterface { mtuV6 = result.mtuV6; handoverFailureMode = result.handoverFailureMode; pduSessionId = result.pduSessionId; defaultQos = Qos.create(result.defaultQos); qosSessions = result.qosSessions.stream().map(session -> QosSession.create(session)).collect(Collectors.toList()); } else { Rlog.e(RILJ_LOG_TAG, "Unsupported SetupDataCallResult " + dcResult); return null; Loading Loading @@ -7373,6 +7386,8 @@ public class RIL extends BaseCommands implements CommandsInterface { .setMtuV6(mtuV6) .setHandoverFailureMode(handoverFailureMode) .setPduSessionId(pduSessionId) .setDefaultQos(defaultQos) .setQosSessions(qosSessions) .build(); } Loading
src/java/com/android/internal/telephony/dataconnection/DataConnection.java +12 −1 Original line number Diff line number Diff line Loading @@ -65,6 +65,8 @@ import android.telephony.data.DataCallResponse.HandoverFailureMode; import android.telephony.data.DataProfile; import android.telephony.data.DataService; import android.telephony.data.DataServiceCallback; import android.telephony.data.Qos; import android.telephony.data.QosSession; import android.text.TextUtils; import android.util.LocalLog; import android.util.Pair; Loading Loading @@ -291,6 +293,8 @@ public class DataConnection extends StateMachine { private boolean mIsSuspended; private int mDownlinkBandwidth = 14; private int mUplinkBandwidth = 14; private Qos mDefaultQos = null; private List<QosSession> mQosSessions = new ArrayList<>(); /** The corresponding network agent for this data connection. */ private DcNetworkAgent mNetworkAgent; Loading Loading @@ -588,6 +592,11 @@ public class DataConnection extends StateMachine { return mPduSessionId; } public void updateQosParameters(DataCallResponse response) { mDefaultQos = response.getDefaultQos(); mQosSessions = response.getQosSessions(); } @VisibleForTesting public UpdateLinkPropertyResult updateLinkProperty(DataCallResponse newState) { UpdateLinkPropertyResult result = new UpdateLinkPropertyResult(mLinkProperties); Loading Loading @@ -1197,7 +1206,7 @@ public class DataConnection extends StateMachine { if (DBG) log("onSetupConnectionCompleted received successful DataCallResponse"); mCid = response.getId(); updatePcscfAddr(response); updateQosParameters(response); result = updateLinkProperty(response).setupResult; setPduSessionId(response.getPduSessionId()); Loading Loading @@ -3457,6 +3466,8 @@ public class DataConnection extends StateMachine { pw.println("mUnmeteredOverride=" + mUnmeteredOverride); pw.println("mDownlinkBandwidth" + mDownlinkBandwidth); pw.println("mUplinkBandwidth=" + mUplinkBandwidth); pw.println("mDefaultQos=" + mDefaultQos); pw.println("mQosSessions=" + mQosSessions); pw.println("disallowedApnTypes=" + ApnSetting.getApnTypesStringFromBitmask(getDisallowedApnTypes())); pw.println("mInstanceNumber=" + mInstanceNumber); Loading
src/java/com/android/internal/telephony/dataconnection/DcController.java +1 −0 Original line number Diff line number Diff line Loading @@ -303,6 +303,7 @@ public class DcController extends Handler { // Its active so update the DataConnections link properties UpdateLinkPropertyResult result = dc.updateLinkProperty(newState); dc.updateQosParameters(newState); if (result.oldLp.equals(result.newLp)) { if (DBG) log("onDataStateChanged: no change"); } else { Loading
tests/telephonytests/src/com/android/internal/telephony/RILTest.java +111 −0 Original line number Diff line number Diff line Loading @@ -156,6 +156,11 @@ import android.telephony.TelephonyManager; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; import android.telephony.data.DataProfile; import android.telephony.data.EpsQos; import android.telephony.data.NrQos; import android.telephony.data.Qos; import android.telephony.data.QosFilter; import android.telephony.data.QosSession; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; Loading Loading @@ -2175,6 +2180,7 @@ public class RILTest extends TelephonyTest { .setMtu(1500) .setMtuV4(1500) .setMtuV6(1500) .setQosSessions(new ArrayList<>()) .build(); assertEquals(response, RIL.convertDataCallResult(result10)); Loading Loading @@ -2248,9 +2254,114 @@ public class RILTest extends TelephonyTest { .setMtu(3000) .setMtuV4(1500) .setMtuV6(3000) .setQosSessions(new ArrayList<>()) .build(); assertEquals(response, RIL.convertDataCallResult(result15)); // Test V1.6 SetupDataCallResult android.hardware.radio.V1_6.SetupDataCallResult result16 = new android.hardware.radio.V1_6.SetupDataCallResult(); result16.cause = android.hardware.radio.V1_4.DataCallFailCause.NONE; result16.suggestedRetryTime = -1; result16.cid = 0; result16.active = android.hardware.radio.V1_4.DataConnActiveStatus.ACTIVE; result16.type = android.hardware.radio.V1_4.PdpProtocolType.IPV4V6; result16.ifname = "ifname"; result16.addresses = new ArrayList<>(Arrays.asList(la1, la2)); result16.dnses = new ArrayList<>(Arrays.asList("10.0.2.3", "fd00:976a::9")); result16.gateways = new ArrayList<>(Arrays.asList("10.0.2.15", "fe80::2")); result16.pcscf = new ArrayList<>(Arrays.asList( "fd00:976a:c206:20::6", "fd00:976a:c206:20::9", "fd00:976a:c202:1d::9")); result16.mtuV4 = 1500; result16.mtuV6 = 3000; result16.handoverFailureMode = android.hardware.radio.V1_6.HandoverFailureMode.LEGACY; // Build android.hardware.radio.V1_6.EpsQos android.hardware.radio.V1_6.EpsQos halEpsQos = new android.hardware.radio.V1_6.EpsQos(); halEpsQos.qci = 4; halEpsQos.downlink.maxBitrateKbps = 4; halEpsQos.downlink.guaranteedBitrateKbps = 7; halEpsQos.uplink.maxBitrateKbps = 5; halEpsQos.uplink.guaranteedBitrateKbps = 8; result16.defaultQos.eps(halEpsQos); // android.hardware.radio.V1_6.PortRange android.hardware.radio.V1_6.PortRange localPort = new android.hardware.radio.V1_6.PortRange(); android.hardware.radio.V1_6.PortRange remotePort = new android.hardware.radio.V1_6.PortRange(); localPort.start = 123; localPort.end = 123; remotePort.start = 223; remotePort.end = 223; // android.hardware.radio.V1_6.QosFilter android.hardware.radio.V1_6.QosFilter halQosFilter = new android.hardware.radio.V1_6.QosFilter(); halQosFilter.localAddresses = new ArrayList<>(Arrays.asList("122.22.22.22")); halQosFilter.remoteAddresses = new ArrayList<>(Arrays.asList("144.44.44.44")); halQosFilter.localPort.range(localPort); halQosFilter.remotePort.range(remotePort); halQosFilter.protocol = android.hardware.radio.V1_6.QosProtocol.UDP; halQosFilter.tos.value((byte)7); halQosFilter.flowLabel.value(987); halQosFilter.spi.value(678); halQosFilter.direction = android.hardware.radio.V1_6.QosFilterDirection.BIDIRECTIONAL; halQosFilter.precedence = 45; // android.hardware.radio.V1_6.QosSession android.hardware.radio.V1_6.QosSession halQosSession = new android.hardware.radio.V1_6.QosSession(); halQosSession.qosSessionId = 1234; halQosSession.qos.eps(halEpsQos); halQosSession.qosFilters = new ArrayList<>(Arrays.asList(halQosFilter)); result16.qosSessions = new ArrayList<>(Arrays.asList(halQosSession)); EpsQos epsQos = new EpsQos(halEpsQos); QosFilter qosFilter = new QosFilter( Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("122.22.22.22"), 32)), Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("144.44.44.44"), 32)), new QosFilter.PortRange(123, 123), new QosFilter.PortRange(223, 223), QosFilter.QOS_PROTOCOL_UDP, 7, 987, 678, QosFilter.QOS_FILTER_DIRECTION_BIDIRECTIONAL, 45); ArrayList<QosFilter> qosFilters = new ArrayList<>(); ArrayList<QosSession> qosSessions = new ArrayList<>(); qosFilters.add(qosFilter); QosSession qosSession = new QosSession(1234, epsQos, qosFilters); qosSessions.add(qosSession); response = new DataCallResponse.Builder() .setCause(0) .setId(0) .setLinkStatus(2) .setProtocolType(ApnSetting.PROTOCOL_IPV4V6) .setInterfaceName("ifname") .setAddresses(Arrays.asList( new LinkAddress(InetAddresses.parseNumericAddress("10.0.2.15"), 32), new LinkAddress("2607:fb90:a620:651d:eabe:f8da:c107:44be/64"))) .setDnsAddresses(Arrays.asList(InetAddresses.parseNumericAddress("10.0.2.3"), InetAddresses.parseNumericAddress("fd00:976a::9"))) .setGatewayAddresses(Arrays.asList(InetAddresses.parseNumericAddress("10.0.2.15"), InetAddresses.parseNumericAddress("fe80::2"))) .setPcscfAddresses(Arrays.asList( InetAddresses.parseNumericAddress("fd00:976a:c206:20::6"), InetAddresses.parseNumericAddress("fd00:976a:c206:20::9"), InetAddresses.parseNumericAddress("fd00:976a:c202:1d::9"))) .setMtu(3000) .setMtuV4(1500) .setMtuV6(3000) .setHandoverFailureMode(DataCallResponse.HANDOVER_FAILURE_MODE_LEGACY) .setDefaultQos(epsQos) .setQosSessions(qosSessions) .build(); assertEquals(response, RIL.convertDataCallResult(result16)); } @Test Loading
tests/telephonytests/src/com/android/internal/telephony/dataconnection/DataCallResponseTest.java +4 −0 Original line number Diff line number Diff line Loading @@ -27,9 +27,11 @@ import android.net.LinkAddress; import android.os.Parcel; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; import android.telephony.data.EpsQos; import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.SmallTest; import java.util.ArrayList; import java.util.Arrays; public class DataCallResponseTest extends AndroidTestCase { Loading @@ -51,6 +53,8 @@ public class DataCallResponseTest extends AndroidTestCase { Arrays.asList(InetAddresses.parseNumericAddress(FAKE_PCSCF_ADDRESS))) .setMtuV4(1440) .setMtuV6(1440) .setDefaultQos(new EpsQos()) .setQosSessions(new ArrayList<>()) .build(); Parcel p = Parcel.obtain(); Loading