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

Commit 31e71210 authored by Shuo Qian's avatar Shuo Qian Committed by android-build-merger
Browse files

Merge "Add RadioIndication for Radio VTS test" into oc-dr1-dev

am: 7e268122

Change-Id: I81f2ad1d6acc99918ab09cefad55b142aaaed399
parents 5cc58a76 7e268122
Loading
Loading
Loading
Loading
+1 −23
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ cc_test {
           "radio_hidl_hal_stk.cpp",
           "radio_hidl_hal_test.cpp",
           "radio_hidl_hal_voice.cpp",
           "radio_indication.cpp",
           "radio_response.cpp",
           "VtsHalRadioV1_0TargetTest.cpp",
           "vts_test_util.cpp"],
@@ -71,29 +72,6 @@ cc_test {
    ],
}

cc_library_static {
    name: "RadioHidlHalUtilsBase",
    srcs : [
        "radio_hidl_hal_test.cpp",
        "radio_response.cpp"
    ],
    shared_libs: [
        "libbase",
        "liblog",
        "libcutils",
        "libhidlbase",
        "libhidltransport",
        "libnativehelper",
        "libutils",
        "android.hardware.radio@1.0",
    ],
    static_libs: ["VtsHalHidlTargetTestBase"],
    cflags: [
        "-O0",
        "-g",
    ],
}

cc_library_static {
    name: "RadioVtsTestUtilBase",
    srcs : [
+6 −4
Original line number Diff line number Diff line
@@ -19,14 +19,16 @@
void RadioHidlTest::SetUp() {
    radio =
        ::testing::VtsHalHidlTargetTestBase::getService<IRadio>(hidl_string(RADIO_SERVICE_NAME));
    ASSERT_NE(radio, nullptr);
    ASSERT_NE(nullptr, radio.get());

    radioRsp = new RadioResponse(*this);
    ASSERT_NE(radioRsp, nullptr);
    radioRsp = new (std::nothrow) RadioResponse(*this);
    ASSERT_NE(nullptr, radioRsp.get());

    count = 0;

    radioInd = NULL;
    radioInd = new (std::nothrow) RadioIndication(*this);
    ASSERT_NE(nullptr, radioInd.get());

    radio->setResponseFunctions(radioRsp, radioInd);

    int serial = GetRandomSerialNumber();
+119 −48
Original line number Diff line number Diff line
@@ -28,53 +28,7 @@

#include "vts_test_util.h"

using ::android::hardware::radio::V1_0::ActivityStatsInfo;
using ::android::hardware::radio::V1_0::AppType;
using ::android::hardware::radio::V1_0::CardStatus;
using ::android::hardware::radio::V1_0::CardState;
using ::android::hardware::radio::V1_0::Call;
using ::android::hardware::radio::V1_0::CallForwardInfo;
using ::android::hardware::radio::V1_0::CarrierMatchType;
using ::android::hardware::radio::V1_0::CarrierRestrictions;
using ::android::hardware::radio::V1_0::CdmaRoamingType;
using ::android::hardware::radio::V1_0::CdmaBroadcastSmsConfigInfo;
using ::android::hardware::radio::V1_0::CdmaSubscriptionSource;
using ::android::hardware::radio::V1_0::CellInfo;
using ::android::hardware::radio::V1_0::ClipStatus;
using ::android::hardware::radio::V1_0::DataRegStateResult;
using ::android::hardware::radio::V1_0::DeviceStateType;
using ::android::hardware::radio::V1_0::Dial;
using ::android::hardware::radio::V1_0::GsmBroadcastSmsConfigInfo;
using ::android::hardware::radio::V1_0::HardwareConfig;
using ::android::hardware::radio::V1_0::IccIo;
using ::android::hardware::radio::V1_0::IccIoResult;
using ::android::hardware::radio::V1_0::IRadio;
using ::android::hardware::radio::V1_0::IRadioResponse;
using ::android::hardware::radio::V1_0::IRadioIndication;
using ::android::hardware::radio::V1_0::RadioConst;
using ::android::hardware::radio::V1_0::RadioError;
using ::android::hardware::radio::V1_0::RadioResponseInfo;
using ::android::hardware::radio::V1_0::LastCallFailCauseInfo;
using ::android::hardware::radio::V1_0::LceDataInfo;
using ::android::hardware::radio::V1_0::LceStatusInfo;
using ::android::hardware::radio::V1_0::NeighboringCell;
using ::android::hardware::radio::V1_0::NvItem;
using ::android::hardware::radio::V1_0::NvWriteItem;
using ::android::hardware::radio::V1_0::OperatorInfo;
using ::android::hardware::radio::V1_0::PreferredNetworkType;
using ::android::hardware::radio::V1_0::RadioBandMode;
using ::android::hardware::radio::V1_0::RadioCapability;
using ::android::hardware::radio::V1_0::RadioResponseType;
using ::android::hardware::radio::V1_0::RadioTechnology;
using ::android::hardware::radio::V1_0::RadioTechnologyFamily;
using ::android::hardware::radio::V1_0::ResetNvType;
using ::android::hardware::radio::V1_0::SelectUiccSub;
using ::android::hardware::radio::V1_0::SendSmsResult;
using ::android::hardware::radio::V1_0::SetupDataCallResult;
using ::android::hardware::radio::V1_0::SignalStrength;
using ::android::hardware::radio::V1_0::SimApdu;
using ::android::hardware::radio::V1_0::TtyMode;
using ::android::hardware::radio::V1_0::VoiceRegStateResult;
using namespace ::android::hardware::radio::V1_0;

using ::android::hardware::hidl_string;
using ::android::hardware::hidl_vec;
@@ -440,6 +394,123 @@ class RadioResponse : public IRadioResponse {
    Return<void> acknowledgeRequest(int32_t serial);
};

/* Callback class for radio indication */
class RadioIndication : public IRadioIndication {
   protected:
    RadioHidlTest& parent;

   public:
    RadioIndication(RadioHidlTest& parent);
    virtual ~RadioIndication() = default;

    Return<void> radioStateChanged(RadioIndicationType type, RadioState radioState);

    Return<void> callStateChanged(RadioIndicationType type);

    Return<void> networkStateChanged(RadioIndicationType type);

    Return<void> newSms(RadioIndicationType type,
                        const ::android::hardware::hidl_vec<uint8_t>& pdu);

    Return<void> newSmsStatusReport(RadioIndicationType type,
                                    const ::android::hardware::hidl_vec<uint8_t>& pdu);

    Return<void> newSmsOnSim(RadioIndicationType type, int32_t recordNumber);

    Return<void> onUssd(RadioIndicationType type, UssdModeType modeType,
                        const ::android::hardware::hidl_string& msg);

    Return<void> nitzTimeReceived(RadioIndicationType type,
                                  const ::android::hardware::hidl_string& nitzTime,
                                  uint64_t receivedTime);

    Return<void> currentSignalStrength(RadioIndicationType type,
                                       const SignalStrength& signalStrength);

    Return<void> dataCallListChanged(
        RadioIndicationType type, const ::android::hardware::hidl_vec<SetupDataCallResult>& dcList);

    Return<void> suppSvcNotify(RadioIndicationType type, const SuppSvcNotification& suppSvc);

    Return<void> stkSessionEnd(RadioIndicationType type);

    Return<void> stkProactiveCommand(RadioIndicationType type,
                                     const ::android::hardware::hidl_string& cmd);

    Return<void> stkEventNotify(RadioIndicationType type,
                                const ::android::hardware::hidl_string& cmd);

    Return<void> stkCallSetup(RadioIndicationType type, int64_t timeout);

    Return<void> simSmsStorageFull(RadioIndicationType type);

    Return<void> simRefresh(RadioIndicationType type, const SimRefreshResult& refreshResult);

    Return<void> callRing(RadioIndicationType type, bool isGsm, const CdmaSignalInfoRecord& record);

    Return<void> simStatusChanged(RadioIndicationType type);

    Return<void> cdmaNewSms(RadioIndicationType type, const CdmaSmsMessage& msg);

    Return<void> newBroadcastSms(RadioIndicationType type,
                                 const ::android::hardware::hidl_vec<uint8_t>& data);

    Return<void> cdmaRuimSmsStorageFull(RadioIndicationType type);

    Return<void> restrictedStateChanged(RadioIndicationType type, PhoneRestrictedState state);

    Return<void> enterEmergencyCallbackMode(RadioIndicationType type);

    Return<void> cdmaCallWaiting(RadioIndicationType type,
                                 const CdmaCallWaiting& callWaitingRecord);

    Return<void> cdmaOtaProvisionStatus(RadioIndicationType type, CdmaOtaProvisionStatus status);

    Return<void> cdmaInfoRec(RadioIndicationType type, const CdmaInformationRecords& records);

    Return<void> indicateRingbackTone(RadioIndicationType type, bool start);

    Return<void> resendIncallMute(RadioIndicationType type);

    Return<void> cdmaSubscriptionSourceChanged(RadioIndicationType type,
                                               CdmaSubscriptionSource cdmaSource);

    Return<void> cdmaPrlChanged(RadioIndicationType type, int32_t version);

    Return<void> exitEmergencyCallbackMode(RadioIndicationType type);

    Return<void> rilConnected(RadioIndicationType type);

    Return<void> voiceRadioTechChanged(RadioIndicationType type, RadioTechnology rat);

    Return<void> cellInfoList(RadioIndicationType type,
                              const ::android::hardware::hidl_vec<CellInfo>& records);

    Return<void> imsNetworkStateChanged(RadioIndicationType type);

    Return<void> subscriptionStatusChanged(RadioIndicationType type, bool activate);

    Return<void> srvccStateNotify(RadioIndicationType type, SrvccState state);

    Return<void> hardwareConfigChanged(
        RadioIndicationType type, const ::android::hardware::hidl_vec<HardwareConfig>& configs);

    Return<void> radioCapabilityIndication(RadioIndicationType type, const RadioCapability& rc);

    Return<void> onSupplementaryServiceIndication(RadioIndicationType type,
                                                  const StkCcUnsolSsResult& ss);

    Return<void> stkCallControlAlphaNotify(RadioIndicationType type,
                                           const ::android::hardware::hidl_string& alpha);

    Return<void> lceData(RadioIndicationType type, const LceDataInfo& lce);

    Return<void> pcoData(RadioIndicationType type, const PcoDataInfo& pco);

    Return<void> modemReset(RadioIndicationType type,
                            const ::android::hardware::hidl_string& reason);
};

// The main test class for Radio HIDL.
class RadioHidlTest : public ::testing::VtsHalHidlTargetTestBase {
   protected:
@@ -466,7 +537,7 @@ class RadioHidlTest : public ::testing::VtsHalHidlTargetTestBase {

    sp<IRadio> radio;
    sp<RadioResponse> radioRsp;
    sp<IRadioIndication> radioInd;
    sp<RadioIndication> radioInd;
};

// A class for test environment setup
+229 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2017 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include <radio_hidl_hal_utils_v1_0.h>

RadioIndication::RadioIndication(RadioHidlTest& parent) : parent(parent) {}

Return<void> RadioIndication::radioStateChanged(RadioIndicationType /*type*/,
                                                RadioState /*radioState*/) {
    return Void();
}

Return<void> RadioIndication::callStateChanged(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::networkStateChanged(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::newSms(RadioIndicationType /*type*/,
                                     const ::android::hardware::hidl_vec<uint8_t>& /*pdu*/) {
    return Void();
}

Return<void> RadioIndication::newSmsStatusReport(
    RadioIndicationType /*type*/, const ::android::hardware::hidl_vec<uint8_t>& /*pdu*/) {
    return Void();
}

Return<void> RadioIndication::newSmsOnSim(RadioIndicationType /*type*/, int32_t /*recordNumber*/) {
    return Void();
}

Return<void> RadioIndication::onUssd(RadioIndicationType /*type*/, UssdModeType /*modeType*/,
                                     const ::android::hardware::hidl_string& /*msg*/) {
    return Void();
}

Return<void> RadioIndication::nitzTimeReceived(RadioIndicationType /*type*/,
                                               const ::android::hardware::hidl_string& /*nitzTime*/,
                                               uint64_t /*receivedTime*/) {
    return Void();
}

Return<void> RadioIndication::currentSignalStrength(RadioIndicationType /*type*/,
                                                    const SignalStrength& /*signalStrength*/) {
    return Void();
}

Return<void> RadioIndication::dataCallListChanged(
    RadioIndicationType /*type*/,
    const ::android::hardware::hidl_vec<SetupDataCallResult>& /*dcList*/) {
    return Void();
}

Return<void> RadioIndication::suppSvcNotify(RadioIndicationType /*type*/,
                                            const SuppSvcNotification& /*suppSvc*/) {
    return Void();
}

Return<void> RadioIndication::stkSessionEnd(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::stkProactiveCommand(RadioIndicationType /*type*/,
                                                  const ::android::hardware::hidl_string& /*cmd*/) {
    return Void();
}

Return<void> RadioIndication::stkEventNotify(RadioIndicationType /*type*/,
                                             const ::android::hardware::hidl_string& /*cmd*/) {
    return Void();
}

Return<void> RadioIndication::stkCallSetup(RadioIndicationType /*type*/, int64_t /*timeout*/) {
    return Void();
}

Return<void> RadioIndication::simSmsStorageFull(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::simRefresh(RadioIndicationType /*type*/,
                                         const SimRefreshResult& /*refreshResult*/) {
    return Void();
}

Return<void> RadioIndication::callRing(RadioIndicationType /*type*/, bool /*isGsm*/,
                                       const CdmaSignalInfoRecord& /*record*/) {
    return Void();
}

Return<void> RadioIndication::simStatusChanged(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::cdmaNewSms(RadioIndicationType /*type*/,
                                         const CdmaSmsMessage& /*msg*/) {
    return Void();
}

Return<void> RadioIndication::newBroadcastSms(
    RadioIndicationType /*type*/, const ::android::hardware::hidl_vec<uint8_t>& /*data*/) {
    return Void();
}

Return<void> RadioIndication::cdmaRuimSmsStorageFull(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::restrictedStateChanged(RadioIndicationType /*type*/,
                                                     PhoneRestrictedState /*state*/) {
    return Void();
}

Return<void> RadioIndication::enterEmergencyCallbackMode(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::cdmaCallWaiting(RadioIndicationType /*type*/,
                                              const CdmaCallWaiting& /*callWaitingRecord*/) {
    return Void();
}

Return<void> RadioIndication::cdmaOtaProvisionStatus(RadioIndicationType /*type*/,
                                                     CdmaOtaProvisionStatus /*status*/) {
    return Void();
}

Return<void> RadioIndication::cdmaInfoRec(RadioIndicationType /*type*/,
                                          const CdmaInformationRecords& /*records*/) {
    return Void();
}

Return<void> RadioIndication::indicateRingbackTone(RadioIndicationType /*type*/, bool /*start*/) {
    return Void();
}

Return<void> RadioIndication::resendIncallMute(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::cdmaSubscriptionSourceChanged(RadioIndicationType /*type*/,
                                                            CdmaSubscriptionSource /*cdmaSource*/) {
    return Void();
}

Return<void> RadioIndication::cdmaPrlChanged(RadioIndicationType /*type*/, int32_t /*version*/) {
    return Void();
}

Return<void> RadioIndication::exitEmergencyCallbackMode(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::rilConnected(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::voiceRadioTechChanged(RadioIndicationType /*type*/,
                                                    RadioTechnology /*rat*/) {
    return Void();
}

Return<void> RadioIndication::cellInfoList(
    RadioIndicationType /*type*/, const ::android::hardware::hidl_vec<CellInfo>& /*records*/) {
    return Void();
}

Return<void> RadioIndication::imsNetworkStateChanged(RadioIndicationType /*type*/) {
    return Void();
}

Return<void> RadioIndication::subscriptionStatusChanged(RadioIndicationType /*type*/,
                                                        bool /*activate*/) {
    return Void();
}

Return<void> RadioIndication::srvccStateNotify(RadioIndicationType /*type*/, SrvccState /*state*/) {
    return Void();
}

Return<void> RadioIndication::hardwareConfigChanged(
    RadioIndicationType /*type*/,
    const ::android::hardware::hidl_vec<HardwareConfig>& /*configs*/) {
    return Void();
}

Return<void> RadioIndication::radioCapabilityIndication(RadioIndicationType /*type*/,
                                                        const RadioCapability& /*rc*/) {
    return Void();
}

Return<void> RadioIndication::onSupplementaryServiceIndication(RadioIndicationType /*type*/,
                                                               const StkCcUnsolSsResult& /*ss*/) {
    return Void();
}

Return<void> RadioIndication::stkCallControlAlphaNotify(
    RadioIndicationType /*type*/, const ::android::hardware::hidl_string& /*alpha*/) {
    return Void();
}

Return<void> RadioIndication::lceData(RadioIndicationType /*type*/, const LceDataInfo& /*lce*/) {
    return Void();
}

Return<void> RadioIndication::pcoData(RadioIndicationType /*type*/, const PcoDataInfo& /*pco*/) {
    return Void();
}

Return<void> RadioIndication::modemReset(RadioIndicationType /*type*/,
                                         const ::android::hardware::hidl_string& /*reason*/) {
    return Void();
}
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ cc_test {
    defaults: ["hidl_defaults"],
    srcs: ["radio_hidl_hal_api.cpp",
           "radio_hidl_hal_test.cpp",
           "radio_indication.cpp",
           "radio_response.cpp",
           "VtsHalRadioV1_1TargetTest.cpp"],
    shared_libs: [
@@ -33,7 +34,6 @@ cc_test {
        "android.hardware.radio@1.0",
    ],
    static_libs: ["VtsHalHidlTargetTestBase",
                  "RadioHidlHalUtilsBase",
                  "RadioVtsTestUtilBase"],
    header_libs: [
        "radio.util.header@1.0",
Loading