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

Commit ebae647f authored by Zhuoyao Zhang's avatar Zhuoyao Zhang
Browse files

Convert contexthub hal test to use VtsHalHidlTargetTestEnvBase

Bug: 64203181
Test: make vts
      vts-tradefed run vts -m VtsHalContexthubV1_0Target

Change-Id: Iaf790e6d0fb96b421a1cd29417832ffaf9d01091
parent 8f7ff573
Loading
Loading
Loading
Loading
+22 −2
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
#define LOG_TAG "contexthub_hidl_hal_test"

#include <VtsHalHidlTargetTestBase.h>
#include <VtsHalHidlTargetTestEnvBase.h>
#include <android-base/logging.h>
#include <android/hardware/contexthub/1.0/IContexthub.h>
#include <android/hardware/contexthub/1.0/IContexthubCallback.h>
@@ -92,12 +93,27 @@ std::vector<uint32_t> getHubIds() {
  return hubIds;
}

// Test environment for Contexthub HIDL HAL.
class ContexthubHidlEnvironment : public ::testing::VtsHalHidlTargetTestEnvBase {
 public:
  // get the test environment singleton
  static ContexthubHidlEnvironment* Instance() {
    static ContexthubHidlEnvironment* instance = new ContexthubHidlEnvironment;
    return instance;
  }

  virtual void registerTestServices() override { registerTestService<IContexthub>(); }
 private:
  ContexthubHidlEnvironment() {}
};

// Base test fixture that initializes the HAL and makes the context hub API
// handle available
class ContexthubHidlTestBase : public ::testing::VtsHalHidlTargetTestBase {
 public:
  virtual void SetUp() override {
    hubApi = ::testing::VtsHalHidlTargetTestBase::getService<IContexthub>();
    hubApi = ::testing::VtsHalHidlTargetTestBase::getService<IContexthub>(
        ContexthubHidlEnvironment::Instance()->getServiceName<IContexthub>());
    ASSERT_NE(hubApi, nullptr);

    // getHubs() must be called at least once for proper initialization of the
@@ -381,7 +397,11 @@ INSTANTIATE_TEST_CASE_P(HubIdSpecificTests, ContexthubTxnTest,
} // anonymous namespace

int main(int argc, char **argv) {
  ::testing::AddGlobalTestEnvironment(ContexthubHidlEnvironment::Instance());
  ::testing::InitGoogleTest(&argc, argv);
  return RUN_ALL_TESTS();
  ContexthubHidlEnvironment::Instance()->init(&argc, argv);
  int status = RUN_ALL_TESTS();
  ALOGI ("Test result = %d", status);
  return status;
}