tests: Move test code into tests directory and redefine the test role 71/276571/4
authorChanwoo Choi <cw00.choi@samsung.com>
Fri, 17 Jun 2022 09:03:11 +0000 (18:03 +0900)
committerChanwoo Choi <cw00.choi@samsung.com>
Thu, 23 Jun 2022 06:08:11 +0000 (15:08 +0900)
 Move test code into tests directory and redefine the test role as
 following because unittest will be added for each module.
- intergraion test : Test the public interface of PASS daemon
- haltest : Test the HAL interface of PASS daemon

Change-Id: Ief0d07b38491454dc0dbb06a268e5c56de31a886
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
CMakeLists.txt
packaging/pass.spec
tests/haltest/CMakeLists.txt [moved from unittest/CMakeLists.txt with 73% similarity]
tests/haltest/power-haltests.cpp [moved from unittest/power-haltests.cpp with 100% similarity]
tests/integration-test/CMakeLists.txt [new file with mode: 0644]
tests/integration-test/pass-tests.cpp [moved from unittest/pass-unittests.cpp with 100% similarity]

index 517d855..6116b46 100644 (file)
@@ -1,5 +1,5 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(pass C)
+PROJECT(pass)
 
 ########################################################
 # PASS CMakeLists.txt
@@ -130,5 +130,6 @@ INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/systemd/ DESTINATION lib/systemd/s
                PATTERN "${PROJECT_NAME}.service"
                )
 
-ADD_SUBDIRECTORY(unittest)
+ADD_SUBDIRECTORY(tests/integration-test)
+ADD_SUBDIRECTORY(tests/haltest)
 ADD_SUBDIRECTORY(lib)
index 7c64eae..29a506e 100644 (file)
@@ -123,7 +123,7 @@ systemctl daemon-reload
 
 %files -n %{unittest_name}
 %defattr(-,root,root,-)
-%{_bindir}/pass-unittests
+%{_bindir}/pass-tests
 
 %files -n %{libpass_resource_monitor_name}
 %license LICENSE
similarity index 73%
rename from unittest/CMakeLists.txt
rename to tests/haltest/CMakeLists.txt
index 802fa58..1f0e9a3 100644 (file)
@@ -29,16 +29,9 @@ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
 
-SET(src ${CMAKE_SOURCE_DIR}/unittest/power-haltests.cpp)
+SET(src ${CMAKE_SOURCE_DIR}/tests/haltest/power-haltests.cpp)
 GET_FILENAME_COMPONENT(src_name ${src} NAME_WE)
 MESSAGE("${src_name}")
 ADD_EXECUTABLE(${src_name} ${SRCS} ${src})
 TARGET_LINK_LIBRARIES(${src_name} ${gtest_LDFLAGS} ${gtest_pkgs_LDFLAGS} -ldl -L${LIBDIR}/hal)
 INSTALL(TARGETS ${src_name} DESTINATION /usr/bin/hal)
-
-SET(src ${CMAKE_SOURCE_DIR}/unittest/pass-unittests.cpp)
-GET_FILENAME_COMPONENT(src_name ${src} NAME_WE)
-MESSAGE("${src_name}")
-ADD_EXECUTABLE(${src_name} ${SRCS} ${src})
-TARGET_LINK_LIBRARIES(${src_name} ${gtest_LDFLAGS} ${gtest_pkgs_LDFLAGS} -ldl -L${LIBDIR}/hal)
-INSTALL(TARGETS ${src_name} DESTINATION /usr/bin/)
diff --git a/tests/integration-test/CMakeLists.txt b/tests/integration-test/CMakeLists.txt
new file mode 100644 (file)
index 0000000..2f12af5
--- /dev/null
@@ -0,0 +1,37 @@
+PROJECT(pass C CXX)
+
+SET(SRCS ${CMAKE_SOURCE_DIR}/src/pass/pass-hal.c
+       ${CMAKE_SOURCE_DIR}/src/pass/pass-parser.c
+       ${CMAKE_SOURCE_DIR}/src/util/common.c
+)
+
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/pass)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(gtest_pkgs REQUIRED
+       glib-2.0
+       gio-2.0
+       gmock
+       dlog
+       json-c
+       hal-api-power
+)
+
+FOREACH(flag ${gtest_pkgs_CFLAGS})
+       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wall -fPIE -fPIC")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
+
+SET(src ${CMAKE_SOURCE_DIR}/tests/integration-test/pass-tests.cpp)
+GET_FILENAME_COMPONENT(src_name ${src} NAME_WE)
+MESSAGE("${src_name}")
+ADD_EXECUTABLE(${src_name} ${SRCS} ${src})
+TARGET_LINK_LIBRARIES(${src_name} ${gtest_LDFLAGS} ${gtest_pkgs_LDFLAGS} -ldl -L${LIBDIR}/hal)
+INSTALL(TARGETS ${src_name} DESTINATION /usr/bin/)