diff --git a/weaver/1.0/vts/functional/VtsHalWeaverV1_0TargetTest.cpp b/weaver/1.0/vts/functional/VtsHalWeaverV1_0TargetTest.cpp index 372d78715b..de2a1de861 100644 --- a/weaver/1.0/vts/functional/VtsHalWeaverV1_0TargetTest.cpp +++ b/weaver/1.0/vts/functional/VtsHalWeaverV1_0TargetTest.cpp @@ -19,6 +19,7 @@ #include #include +#include using ::android::hardware::weaver::V1_0::IWeaver; using ::android::hardware::weaver::V1_0::WeaverConfig; @@ -33,9 +34,22 @@ const std::vector WRONG_KEY{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 const std::vector VALUE{16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; const std::vector OTHER_VALUE{0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 255, 255}; +// Test environment for Weaver HIDL HAL. +class WeaverHidlEnvironment : public ::testing::VtsHalHidlTargetTestEnvBase { + public: + // get the test environment singleton + static WeaverHidlEnvironment* Instance() { + static WeaverHidlEnvironment* instance = new WeaverHidlEnvironment; + return instance; + } + + virtual void registerTestServices() override { registerTestService(); } +}; + struct WeaverHidlTest : public ::testing::VtsHalHidlTargetTestBase { virtual void SetUp() override { - weaver = ::testing::VtsHalHidlTargetTestBase::getService(); + weaver = ::testing::VtsHalHidlTargetTestBase::getService( + WeaverHidlEnvironment::Instance()->getServiceName()); ASSERT_NE(weaver, nullptr); } @@ -334,3 +348,12 @@ TEST_F(WeaverHidlTest, ReadWithTooLargeKeyFails) { EXPECT_TRUE(readValue.empty()); EXPECT_EQ(timeout, 0u); } + +int main(int argc, char** argv) { + ::testing::AddGlobalTestEnvironment(WeaverHidlEnvironment::Instance()); + ::testing::InitGoogleTest(&argc, argv); + WeaverHidlEnvironment::Instance()->init(&argc, argv); + int status = RUN_ALL_TESTS(); + ALOGI("Test result = %d", status); + return status; +}