diff --git a/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp b/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp index 3405422af1..13290d913a 100644 --- a/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp +++ b/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp @@ -16,12 +16,13 @@ #define LOG_TAG "light_hidl_hal_test" +#include +#include #include #include #include -#include -#include #include +#include using ::android::hardware::light::V2_0::Brightness; using ::android::hardware::light::V2_0::Flash; @@ -72,10 +73,25 @@ const static std::set kAllTypes = { Type::WIFI }; +// Test environment for Light HIDL HAL. +class LightHidlEnvironment : public ::testing::VtsHalHidlTargetTestEnvBase { + public: + // get the test environment singleton + static LightHidlEnvironment* Instance() { + static LightHidlEnvironment* instance = new LightHidlEnvironment; + return instance; + } + + virtual void registerTestServices() override { registerTestService(); } + private: + LightHidlEnvironment() {} +}; + class LightHidlTest : public ::testing::VtsHalHidlTargetTestBase { public: virtual void SetUp() override { - light = ::testing::VtsHalHidlTargetTestBase::getService(); + light = ::testing::VtsHalHidlTargetTestBase::getService( + LightHidlEnvironment::Instance()->getServiceName()); ASSERT_NE(light, nullptr); LOG(INFO) << "Test is remote " << light->isRemote(); @@ -149,7 +165,9 @@ TEST_F(LightHidlTest, TestUnsupported) { } int main(int argc, char **argv) { + ::testing::AddGlobalTestEnvironment(LightHidlEnvironment::Instance()); ::testing::InitGoogleTest(&argc, argv); + LightHidlEnvironment::Instance()->init(&argc, argv); int status = RUN_ALL_TESTS(); LOG(INFO) << "Test result = " << status; return status;