--- /dev/null
+#include <system_info.h>
+
+#include "haltest.h"
+#include "hal-haptic.h"
+
+class HAPTIC : public testing::Test {
+ protected:
+ static void SetUpHalTestSuite() {
+ int ret_val;
+
+ ret_val = system_info_get_platform_bool(FEATURE_HAPTIC, &HAPTIC::supported);
+ ASSERT_EQ(ret_val, SYSTEM_INFO_ERROR_NONE) << "Failed to get haptic feature";
+ }
+
+ void SetUp() override {}
+ void TearDown() override {}
+
+ static bool supported;
+};
+
+bool HAPTIC::supported = false;
+
+#define CHECK_FEATURE() \
+ if (!HAPTIC::supported) { \
+ SKIP_MESSAGE("Haptic is not supported."); \
+ return; \
+ }
+
+#define CHECK_NODEV(ret_val) \
+ if (ret_val == -ENODEV) { \
+ SKIP_MESSAGE("Not supported HAL."); \
+ return ; \
+ }
+
+TEST_F(HAPTIC, GetBackendP)
+{
+ int ret_val;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_get_backend();
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to get haptic device", ret_val);
+}
+
+TEST_F(HAPTIC, GetDeviceCountP)
+{
+ int ret_val;
+ int count;;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_get_device_count(&count);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to get device count", ret_val);
+}
+
+TEST_F(HAPTIC, OpenDeviceP)
+{
+ int ret_val;
+ int handle = -1;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_open_device(&handle);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to open device", ret_val);
+ // handle >= 0
+ EXPECT_GE(handle, 0) << "Opened handle is invalid.";
+}
+
+TEST_F(HAPTIC, CloseDeviceP)
+{
+ int ret_val;
+ int handle = -1;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_open_device(&handle);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to open device", ret_val);
+
+ ret_val = hal_device_haptic_close_device(handle);
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to close device", ret_val);
+}
+
+TEST_F(HAPTIC, IsValidP)
+{
+ int ret_val;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_is_valid();
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, true) << "Haptic device is not valid.";
+}
+
+TEST_F(HAPTIC, VibrateP)
+{
+ int ret_val;
+ int handle = -1;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_open_device(&handle);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to open device", ret_val);
+
+ ret_val = hal_device_haptic_vibrate(handle, 100, 0, 0, 2, 10000, 2);
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to vibrate device", ret_val);
+
+ sleep(1);
+
+ hal_device_haptic_close_device(handle);
+}
+
+TEST_F(HAPTIC, StopDeviceP)
+{
+ int ret_val;
+ int handle = -1;
+
+ CHECK_FEATURE()
+
+ ret_val = hal_device_haptic_open_device(&handle);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to open device", ret_val);
+
+ ret_val = hal_device_haptic_vibrate(handle, 3000, 0, 0, 2, 10000, 2);
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to vibrate device", ret_val);
+
+ sleep(1);
+
+ ret_val = hal_device_haptic_stop_device(handle);
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to stop device", ret_val);
+
+ hal_device_haptic_close_device(handle);
+}
--- /dev/null
+#include <unistd.h>
+#include <system_info.h>
+
+#include "haltest.h"
+#include "hal-memory.h"
+
+class MEMORY : public testing::Test {
+ protected:
+ void SetUp() override {}
+ void TearDown() override {}
+};
+
+#define CHECK_NODEV(ret_val) \
+ if (ret_val == -ENODEV) { \
+ SKIP_MESSAGE("Not supported HAL."); \
+ return ; \
+ }
+
+TEST_F(MEMORY, GetBackendP)
+{
+ int ret_val;
+
+ ret_val = hal_device_memory_get_backend();
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to get memory device", ret_val);
+}
+
+TEST_F(MEMORY, GetGpuInfoP)
+{
+ int ret_val;
+ int pid;
+ struct gpu_info info = {-1};
+
+ pid = (int)getpid();
+ ret_val = hal_device_memory_get_gpu_info(pid, &info);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to get gpu info", ret_val);
+ EXPECT_GE(info.used_pages, 0) << "Gpu info is invalid.";
+}
+
+TEST_F(MEMORY, GetGemInfoP)
+{
+ int ret_val;
+ int pid;
+ struct gem_info info = {-1, -1};
+
+ pid = (int)getpid();
+ ret_val = hal_device_memory_get_gem_info(pid, &info);
+ CHECK_NODEV(ret_val)
+
+ EXPECT_EQ(ret_val, 0) << strerr("Failed to get gem info", ret_val);
+ EXPECT_GE(info.pss, 0) << "Gem.pss is invalid.";
+ EXPECT_GE(info.rss, 0) << "Gem.rss is invalid.";
+}