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

Commit ace22724 authored by Jack Nudelman's avatar Jack Nudelman
Browse files

Allow REQUEST_NOT_SUPPORTED when requesting data throttling from modem.

Test: make
Bug: 173806949
Change-Id: Icbf1febdc489e8b8cea91fcc4a149afafb01b1b9
parent 5cfbacbb
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -342,6 +342,7 @@ interface IRadioResponse extends @1.5::IRadioResponse {
     *  RadioError:RADIO_NOT_AVAILABLE
     *  RadioError:MODEM_ERR
     *  RadioError:INVALID_ARGUMENTS
     *  RadioError:REQUEST_NOT_SUPPORTED
     */
    oneway setDataThrottlingResponse(RadioResponseInfo info);

+48 −27
Original line number Diff line number Diff line
@@ -420,13 +420,18 @@ TEST_P(RadioHidlTest_v1_6, setDataThrottling) {
    EXPECT_EQ(std::cv_status::no_timeout, wait());
    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_6->rspInfo.type);
    EXPECT_EQ(serial, radioRsp_v1_6->rspInfo.serial);
    ASSERT_TRUE(
            CheckAnyOfErrors(radioRsp_v1_6->rspInfo.error,
    if (getRadioHalCapabilities().modemReducedFeatureSet1) {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::REQUEST_NOT_SUPPORTED}));
    } else {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::RADIO_NOT_AVAILABLE,
                 ::android::hardware::radio::V1_6::RadioError::MODEM_ERR,
                 ::android::hardware::radio::V1_6::RadioError::NONE,
                 ::android::hardware::radio::V1_6::RadioError::INVALID_ARGUMENTS}));

    }
    serial = GetRandomSerialNumber();

    res = radio_v1_6->setDataThrottling(serial, DataThrottlingAction::THROTTLE_ANCHOR_CARRIER,
@@ -435,13 +440,18 @@ TEST_P(RadioHidlTest_v1_6, setDataThrottling) {
    EXPECT_EQ(std::cv_status::no_timeout, wait());
    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_6->rspInfo.type);
    EXPECT_EQ(serial, radioRsp_v1_6->rspInfo.serial);
    ASSERT_TRUE(
            CheckAnyOfErrors(radioRsp_v1_6->rspInfo.error,
    if (getRadioHalCapabilities().modemReducedFeatureSet1) {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::REQUEST_NOT_SUPPORTED}));
    } else {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::RADIO_NOT_AVAILABLE,
                 ::android::hardware::radio::V1_6::RadioError::MODEM_ERR,
                 ::android::hardware::radio::V1_6::RadioError::NONE,
                 ::android::hardware::radio::V1_6::RadioError::INVALID_ARGUMENTS}));

    }
    serial = GetRandomSerialNumber();

    res = radio_v1_6->setDataThrottling(serial, DataThrottlingAction::HOLD, 60000);
@@ -450,13 +460,18 @@ TEST_P(RadioHidlTest_v1_6, setDataThrottling) {
    EXPECT_EQ(std::cv_status::no_timeout, wait());
    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_6->rspInfo.type);
    EXPECT_EQ(serial, radioRsp_v1_6->rspInfo.serial);
    ASSERT_TRUE(
            CheckAnyOfErrors(radioRsp_v1_6->rspInfo.error,
    if (getRadioHalCapabilities().modemReducedFeatureSet1) {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::REQUEST_NOT_SUPPORTED}));
    } else {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::RADIO_NOT_AVAILABLE,
                 ::android::hardware::radio::V1_6::RadioError::MODEM_ERR,
                 ::android::hardware::radio::V1_6::RadioError::NONE,
                 ::android::hardware::radio::V1_6::RadioError::INVALID_ARGUMENTS}));

    }
    serial = GetRandomSerialNumber();

    res = radio_v1_6->setDataThrottling(serial, DataThrottlingAction::NO_DATA_THROTTLING, 60000);
@@ -464,13 +479,19 @@ TEST_P(RadioHidlTest_v1_6, setDataThrottling) {
    EXPECT_EQ(std::cv_status::no_timeout, wait());
    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_6->rspInfo.type);
    EXPECT_EQ(serial, radioRsp_v1_6->rspInfo.serial);
    ASSERT_TRUE(
            CheckAnyOfErrors(radioRsp_v1_6->rspInfo.error,
    if (getRadioHalCapabilities().modemReducedFeatureSet1) {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::REQUEST_NOT_SUPPORTED}));
    } else {
        ASSERT_TRUE(CheckAnyOfErrors(
                radioRsp_v1_6->rspInfo.error,
                {::android::hardware::radio::V1_6::RadioError::RADIO_NOT_AVAILABLE,
                 ::android::hardware::radio::V1_6::RadioError::MODEM_ERR,
                 ::android::hardware::radio::V1_6::RadioError::NONE,
                 ::android::hardware::radio::V1_6::RadioError::INVALID_ARGUMENTS}));
    }
}

/*
 * Test IRadio.setSimCardPower_1_6() for the response returned.
+2 −0
Original line number Diff line number Diff line
@@ -31,6 +31,8 @@ struct HalDeviceCapabilities {
   * <li> calling android.hardware.radio@1.6::IRadio.setNrDualConnectivityState
   * or querying android.hardware.radio@1.6::IRadio.isNrDualConnectivityEnabled
   * </li>
   * <li>Requesting android.hardware.radio@1.6::IRadio.setDataThrottling()
   * </li>
   * </ul>
   */
  bool modemReducedFeatureSet1;