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

Commit e63e0e66 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Convert vibrator hal test to use VtsHalHidlTargetTestEnvBase"

parents bd98b61b 8e27676c
Loading
Loading
Loading
Loading
+22 −12
Original line number Diff line number Diff line
@@ -19,9 +19,11 @@
#include <android-base/logging.h>
#include <android/hardware/vibrator/1.0/IVibrator.h>
#include <android/hardware/vibrator/1.0/types.h>
#include <VtsHalHidlTargetTestBase.h>
#include <unistd.h>

#include <VtsHalHidlTargetTestBase.h>
#include <VtsHalHidlTargetTestEnvBase.h>

using ::android::hardware::vibrator::V1_0::Effect;
using ::android::hardware::vibrator::V1_0::EffectStrength;
using ::android::hardware::vibrator::V1_0::IVibrator;
@@ -30,11 +32,27 @@ using ::android::hardware::Return;
using ::android::hardware::Void;
using ::android::sp;

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

  virtual void registerTestServices() override { registerTestService<IVibrator>(); }

 private:
  VibratorHidlEnvironment() {}
};

// The main test class for VIBRATOR HIDL HAL.
class VibratorHidlTest : public ::testing::VtsHalHidlTargetTestBase {
 public:
  virtual void SetUp() override {
    vibrator = ::testing::VtsHalHidlTargetTestBase::getService<IVibrator>();
    vibrator = ::testing::VtsHalHidlTargetTestBase::getService<IVibrator>(
        VibratorHidlEnvironment::Instance()->getServiceName<IVibrator>());
    ASSERT_NE(vibrator, nullptr);
  }

@@ -43,15 +61,6 @@ class VibratorHidlTest : public ::testing::VtsHalHidlTargetTestBase {
  sp<IVibrator> vibrator;
};

// A class for test environment setup (kept since this file is a template).
class VibratorHidlEnvironment : public ::testing::Environment {
 public:
  virtual void SetUp() {}
  virtual void TearDown() {}

 private:
};

static void validatePerformEffect(Status status, uint32_t lengthMs) {
  ASSERT_TRUE(status == Status::OK || status == Status::UNSUPPORTED_OPERATION);
  if (status == Status::OK) {
@@ -96,8 +105,9 @@ TEST_F(VibratorHidlTest, SetAmplitudeReturnUnsupportedOperationIfNotSupported) {
}

int main(int argc, char **argv) {
  ::testing::AddGlobalTestEnvironment(new VibratorHidlEnvironment);
  ::testing::AddGlobalTestEnvironment(VibratorHidlEnvironment::Instance());
  ::testing::InitGoogleTest(&argc, argv);
  VibratorHidlEnvironment::Instance()->init(&argc, argv);
  int status = RUN_ALL_TESTS();
  LOG(INFO) << "Test result = " << status;
  return status;
+20 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
#define LOG_TAG "vibrator_hidl_hal_test"

#include <VtsHalHidlTargetTestBase.h>
#include <VtsHalHidlTargetTestEnvBase.h>
#include <android-base/logging.h>
#include <android/hardware/vibrator/1.1/IVibrator.h>
#include <android/hardware/vibrator/1.1/types.h>
@@ -31,11 +32,27 @@ using ::android::hardware::Return;
using ::android::hardware::Void;
using ::android::sp;

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

    virtual void registerTestServices() override { registerTestService<IVibrator>(); }

   private:
    VibratorHidlEnvironment() {}
};

// The main test class for VIBRATOR HIDL HAL 1.1.
class VibratorHidlTest_1_1 : public ::testing::VtsHalHidlTargetTestBase {
   public:
    virtual void SetUp() override {
        vibrator = ::testing::VtsHalHidlTargetTestBase::getService<IVibrator>();
        vibrator = ::testing::VtsHalHidlTargetTestBase::getService<IVibrator>(
            VibratorHidlEnvironment::Instance()->getServiceName<IVibrator>());
        ASSERT_NE(vibrator, nullptr);
    }

@@ -61,7 +78,9 @@ TEST_F(VibratorHidlTest_1_1, PerformEffect_1_1) {
}

int main(int argc, char** argv) {
    ::testing::AddGlobalTestEnvironment(VibratorHidlEnvironment::Instance());
    ::testing::InitGoogleTest(&argc, argv);
    VibratorHidlEnvironment::Instance()->init(&argc, argv);
    int status = RUN_ALL_TESTS();
    LOG(INFO) << "Test result = " << status;
    return status;