提交 9cfc4a93 编写于 作者: O openeuler-ci-bot 提交者: Gitee

!50 回退 'Pull Request !49 : change name of testcases'

Merge pull request !50 from lifeng_isula/revert-merge-49-master
......@@ -85,8 +85,10 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third_party)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
# ut and gcoverage
add_subdirectory(tests)
# llt and gcoverage
if (LCR_GCOV)
add_subdirectory(tests)
endif()
# install all files
install(FILES ${CMAKE_BINARY_DIR}/conf/lcr.pc
......
......@@ -69,7 +69,7 @@ find_library(LIBYAJL_LIBRARY yajl
HINTS ${PC_LIBYAJL_LIBDIR} ${PC_LIBYAJL_LIBRARY_DIRS})
_CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so")
if (ENABLE_GCOV)
if (LCR_GCOV)
pkg_check_modules(PC_GTEST "gtest")
find_path(GTEST_INCLUDE_DIR gtest/gtest.h
HINTS ${PC_GTEST_INCLUDEDIR} ${PC_GTEST_INCLUDE_DIRS})
......
......@@ -29,8 +29,8 @@ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-E -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -W
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
option(ENABLE_GCOV "set lcr gcov option" OFF)
if (ENABLE_GCOV)
option(LCR_GCOV "set lcr gcov option" OFF)
if (LCR_GCOV)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fprofile-arcs -ftest-coverage")
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
......
......@@ -103,6 +103,10 @@ if (CMAKE_TOOLCHAIN_FILE)
target_link_libraries(liblcr ${EXTRAL_LINK_LIBS})
endif()
if (LCR_GCOV)
target_link_libraries(liblcr -lgcov)
endif()
# install all files
install(TARGETS liblcr
LIBRARY DESTINATION ${LIB_INSTALL_DIR_DEFAULT} PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE)
......
......@@ -61,48 +61,38 @@ endmacro()
# --------------- testcase add here -----------------
# api testcase
_DEFINE_NEW_TEST(log_ut log_testcase)
_DEFINE_NEW_TEST(libocispec_ut json_testcase)
_DEFINE_NEW_TEST(log_llt log_testcase)
_DEFINE_NEW_TEST(json_llt json_testcase)
# mock test for run lcov to generate html
add_executable(mock_ut main.cpp)
target_include_directories(mock_ut PUBLIC
add_executable(mock_llt main.cpp)
target_include_directories(mock_llt PUBLIC
${GTEST_INCLUDE_DIR}
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
)
target_link_libraries(mock_ut
target_link_libraries(mock_llt
gtest
pthread
)
add_dependencies(mock_ut log_ut libocispec_ut)
add_dependencies(mock_llt log_llt json_llt)
# run ut and gcov
if (ENABLE_GCOV)
set(result isula_libutils.info)
set(result_dir lcr_gcovs)
set(target_dir src/CMakeFiles/isula_libutils.dir)
set(result isula_libutils.info)
set(result_dir lcr_gcovs)
set(target_dir src/CMakeFiles/isula_libutils.dir)
add_custom_command(TARGET mock_ut
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
COMMAND "ctest"
COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
COMMAND ${CMAKE_COMMAND} -E echo run gcov finish
VERBATIM
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
)
else()
add_custom_command(TARGET mock_ut
PRE_BUILD
COMMAND "ctest"
COMMAND ${CMAKE_COMMAND} -E echo UT finish
VERBATIM
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
)
endif()
# generate gcov
add_custom_command(TARGET mock_llt
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E remove -f ${result}
COMMAND ${CMAKE_COMMAND} -E make_directory ${result_dir}
COMMAND "ctest"
COMMAND ${CMD_LCOV} --gcov-tool ${CMD_GCOV} --exclude "/usr/*" --exclude "*/src/utils.c" --exclude "*/json/*" -d ${CMAKE_BINARY_DIR}/${target_dir} -c -o ${result}
COMMAND ${CMD_GENHTML} --ignore-errors source -o ${result_dir} ${result}
COMMAND ${CMAKE_COMMAND} -E echo LLT finish
VERBATIM
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tests
)
# --------------- testcase add finish -----------------
......@@ -30,7 +30,7 @@
#include "read_file.h"
#include "oci_runtime_hooks.h"
TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
TEST(json_testcase, test_oci_runtime_spec_hooks)
{
const char *fname = "./ocihook.json";
oci_runtime_spec_hooks *hooks = nullptr;
......@@ -79,7 +79,7 @@ TEST(libocispec_testcase, test_oci_runtime_spec_hooks)
free(jstr);
}
TEST(libocispec_testcase, test_json_readfile)
TEST(json_testcase, test_json_readfile)
{
const char *fname = "./ocihook.json";
const char *not_exist = "/tmp/not_exist.json";
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册