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

Commit 190548f5 authored by Zhuoyao Zhang's avatar Zhuoyao Zhang
Browse files

Convert broadcastradio hal test to use VtsHalHidlTargetTestEnvBase

Bug: 64203181
Test: make vts
      vts-tradefed run vts -m VtsHalBroadcastradioV1_0Target
      vts-tradefed run vts -m VtsHalBroadcastradioV1_1Target

Change-Id: I574b54dc95522486f4be9b50da436e90f3f88b9d
parent 6b0b8669
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -18,5 +18,8 @@ cc_test {
    name: "VtsHalBroadcastradioV1_0TargetTest",
    defaults: ["VtsHalTargetTestDefaults"],
    srcs: ["VtsHalBroadcastradioV1_0TargetTest.cpp"],
    static_libs: ["android.hardware.broadcastradio@1.0"],
    static_libs: [
        "android.hardware.broadcastradio@1.0",
        "android.hardware.broadcastradio@vts-utils-lib",
    ],
}
+12 −8
Original line number Diff line number Diff line
@@ -22,12 +22,12 @@
#include <hidl/HidlTransportSupport.h>
#include <utils/threads.h>

#include <android/hardware/broadcastradio/1.0/IBroadcastRadioFactory.h>
#include <android/hardware/broadcastradio/1.0/IBroadcastRadio.h>
#include <android/hardware/broadcastradio/1.0/IBroadcastRadioFactory.h>
#include <android/hardware/broadcastradio/1.0/ITuner.h>
#include <android/hardware/broadcastradio/1.0/ITunerCallback.h>
#include <android/hardware/broadcastradio/1.0/types.h>

#include <broadcastradio-vts-utils/environment-utils.h>

using ::android::sp;
using ::android::Mutex;
@@ -48,6 +48,7 @@ using ::android::hardware::broadcastradio::V1_0::ProgramInfo;
using ::android::hardware::broadcastradio::V1_0::MetaData;
using ::android::hardware::broadcastradio::V1_0::MetadataKey;
using ::android::hardware::broadcastradio::V1_0::MetadataType;
using ::android::hardware::broadcastradio::vts::BroadcastRadioHidlEnvironment;

#define RETURN_IF_SKIPPED \
    if (skipped) { \
@@ -55,8 +56,8 @@ using ::android::hardware::broadcastradio::V1_0::MetadataType;
        return; \
    }

static BroadcastRadioHidlEnvironment<IBroadcastRadioFactory>* gEnv = nullptr;
// The main test class for Broadcast Radio HIDL HAL.

class BroadcastRadioHidlTest : public ::testing::VtsHalHidlTargetTestBase,
        public ::testing::WithParamInterface<Class> {
 protected:
@@ -67,7 +68,7 @@ class BroadcastRadioHidlTest : public ::testing::VtsHalHidlTargetTestBase,
        skipped = false;

        sp<IBroadcastRadioFactory> factory =
              ::testing::VtsHalHidlTargetTestBase::getService<IBroadcastRadioFactory>();
            getService<IBroadcastRadioFactory>(gEnv->getServiceName<IBroadcastRadioFactory>());
        ASSERT_NE(nullptr, factory.get());

        Result connectResult;
@@ -731,7 +732,10 @@ INSTANTIATE_TEST_CASE_P(
    ::testing::Values(Class::AM_FM, Class::SAT, Class::DT));

int main(int argc, char** argv) {
    gEnv = new BroadcastRadioHidlEnvironment<IBroadcastRadioFactory>;
    ::testing::AddGlobalTestEnvironment(gEnv);
    ::testing::InitGoogleTest(&argc, argv);
    gEnv->init(&argc, argv);
    int status = RUN_ALL_TESTS();
    ALOGI("Test result = %d", status);
    return status;
+16 −5
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@
#include <android/hardware/broadcastradio/1.1/types.h>
#include <broadcastradio-utils-1x/Utils.h>
#include <broadcastradio-vts-utils/call-barrier.h>
#include <broadcastradio-vts-utils/environment-utils.h>
#include <broadcastradio-vts-utils/mock-timeout.h>
#include <broadcastradio-vts-utils/pointer-utils.h>
#include <cutils/native_handle.h>
@@ -58,6 +59,7 @@ using V1_0::MetadataKey;
using V1_0::MetadataType;

using broadcastradio::vts::clearAndWait;
using broadcastradio::vts::BroadcastRadioHidlEnvironment;

static constexpr auto kConfigTimeout = 10s;
static constexpr auto kConnectModuleTimeout = 1s;
@@ -91,6 +93,8 @@ struct TunerCallbackMock : public ITunerCallback {
    MOCK_TIMEOUT_METHOD1(currentProgramInfoChanged, Return<void>(const ProgramInfo&));
};

static BroadcastRadioHidlEnvironment<IBroadcastRadioFactory>* gEnv = nullptr;

class BroadcastRadioHalTest : public ::testing::VtsHalHidlTargetTestBase,
                              public ::testing::WithParamInterface<Class> {
   protected:
@@ -119,7 +123,8 @@ void BroadcastRadioHalTest::SetUp() {
    radioClass = GetParam();

    // lookup HIDL service
    auto factory = getService<IBroadcastRadioFactory>();
    auto factory =
        getService<IBroadcastRadioFactory>(gEnv->getServiceName<IBroadcastRadioFactory>());
    ASSERT_NE(nullptr, factory.get());

    // connect radio module
@@ -606,7 +611,13 @@ INSTANTIATE_TEST_CASE_P(BroadcastRadioHalTestCases, BroadcastRadioHalTest,
}  // namespace android

int main(int argc, char** argv) {
    using android::hardware::broadcastradio::V1_1::vts::gEnv;
    using android::hardware::broadcastradio::V1_1::IBroadcastRadioFactory;
    using android::hardware::broadcastradio::vts::BroadcastRadioHidlEnvironment;
    gEnv = new BroadcastRadioHidlEnvironment<IBroadcastRadioFactory>;
    ::testing::AddGlobalTestEnvironment(gEnv);
    ::testing::InitGoogleTest(&argc, argv);
    gEnv->init(&argc, argv);
    int status = RUN_ALL_TESTS();
    ALOGI("Test result = %d", status);
    return status;
+11 −1
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@
#include <android/hardware/broadcastradio/2.0/types.h>
#include <broadcastradio-utils-2x/Utils.h>
#include <broadcastradio-vts-utils/call-barrier.h>
#include <broadcastradio-vts-utils/environment-utils.h>
#include <broadcastradio-vts-utils/mock-timeout.h>
#include <broadcastradio-vts-utils/pointer-utils.h>
#include <cutils/bitops.h>
@@ -52,6 +53,7 @@ using testing::DoAll;
using testing::Invoke;
using testing::SaveArg;

using broadcastradio::vts::BroadcastRadioHidlEnvironment;
using broadcastradio::vts::CallBarrier;
using broadcastradio::vts::clearAndWait;
using utils::make_identifier;
@@ -96,6 +98,8 @@ struct AnnouncementListenerMock : public IAnnouncementListener {
    MOCK_METHOD1(onListUpdated, Return<void>(const hidl_vec<Announcement>&));
};

static BroadcastRadioHidlEnvironment<IBroadcastRadio>* gEnv = nullptr;

class BroadcastRadioHalTest : public ::testing::VtsHalHidlTargetTestBase {
   protected:
    virtual void SetUp() override;
@@ -142,7 +146,7 @@ void BroadcastRadioHalTest::SetUp() {
    EXPECT_EQ(nullptr, mModule.get()) << "Module is already open";

    // lookup HIDL service (radio module)
    mModule = getService<IBroadcastRadio>();
    mModule = getService<IBroadcastRadio>(gEnv->getServiceName<IBroadcastRadio>());
    ASSERT_NE(nullptr, mModule.get()) << "Couldn't find broadcast radio HAL implementation";

    // get module properties
@@ -778,7 +782,13 @@ TEST_F(BroadcastRadioHalTest, AnnouncementListenerRegistration) {
}  // namespace android

int main(int argc, char** argv) {
    using android::hardware::broadcastradio::V2_0::vts::gEnv;
    using android::hardware::broadcastradio::V2_0::IBroadcastRadio;
    using android::hardware::broadcastradio::vts::BroadcastRadioHidlEnvironment;
    gEnv = new BroadcastRadioHidlEnvironment<IBroadcastRadio>;
    ::testing::AddGlobalTestEnvironment(gEnv);
    ::testing::InitGoogleTest(&argc, argv);
    gEnv->init(&argc, argv);
    int status = RUN_ALL_TESTS();
    ALOGI("Test result = %d", status);
    return status;
+4 −0
Original line number Diff line number Diff line
@@ -25,4 +25,8 @@ cc_library_static {
        "-Wextra",
        "-Werror",
    ],
    static_libs: [
        "VtsHalHidlTargetTestBase",
    ],
    group_static_libs: true,
}
Loading