mirror of
https://git.libssh.org/projects/libssh.git
synced 2025-08-05 20:55:46 +03:00
test: Use cmocka instead of cmockery.
cmocka is the successor of cmockery. http://git.cryptomilk.org/projects/cmocka.git/
This commit is contained in:
@@ -92,8 +92,8 @@ install(
|
|||||||
add_subdirectory(examples)
|
add_subdirectory(examples)
|
||||||
|
|
||||||
if (WITH_TESTING)
|
if (WITH_TESTING)
|
||||||
find_package(CMockery REQUIRED)
|
find_package(CMocka REQUIRED)
|
||||||
include(AddCMockeryTest)
|
include(AddCMockaTest)
|
||||||
add_subdirectory(tests)
|
add_subdirectory(tests)
|
||||||
endif (WITH_TESTING)
|
endif (WITH_TESTING)
|
||||||
|
|
||||||
|
@@ -16,8 +16,8 @@ if(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
|
|||||||
set(CMAKE_EXEC_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
|
set(CMAKE_EXEC_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
|
||||||
endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
|
endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
|
||||||
|
|
||||||
function (ADD_CMOCKERY_TEST _testName _testSource)
|
function (ADD_CMOCKA_TEST _testName _testSource)
|
||||||
add_executable(${_testName} ${_testSource})
|
add_executable(${_testName} ${_testSource})
|
||||||
target_link_libraries(${_testName} ${ARGN})
|
target_link_libraries(${_testName} ${ARGN})
|
||||||
add_test(${_testName} ${CMAKE_CURRENT_BINARY_DIR}/${_testName})
|
add_test(${_testName} ${CMAKE_CURRENT_BINARY_DIR}/${_testName})
|
||||||
endfunction (ADD_CMOCKERY_TEST)
|
endfunction (ADD_CMOCKA_TEST)
|
49
cmake/Modules/FindCMocka.cmake
Normal file
49
cmake/Modules/FindCMocka.cmake
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
# - Try to find CMocka
|
||||||
|
# Once done this will define
|
||||||
|
#
|
||||||
|
# CMOCKA_ROOT_DIR - Set this variable to the root installation of CMocka
|
||||||
|
#
|
||||||
|
# Read-Only variables:
|
||||||
|
# CMOCKA_FOUND - system has CMocka
|
||||||
|
# CMOCKA_INCLUDE_DIR - the CMocka include directory
|
||||||
|
# CMOCKA_LIBRARIES - Link these to use CMocka
|
||||||
|
# CMOCKA_DEFINITIONS - Compiler switches required for using CMocka
|
||||||
|
#
|
||||||
|
#=============================================================================
|
||||||
|
# Copyright (c) 2011-2012 Andreas Schneider <asn@cryptomilk.org>
|
||||||
|
#
|
||||||
|
# Distributed under the OSI-approved BSD License (the "License");
|
||||||
|
# see accompanying file Copyright.txt for details.
|
||||||
|
#
|
||||||
|
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||||
|
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
# See the License for more information.
|
||||||
|
#=============================================================================
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(CMOCKA_INCLUDE_DIR
|
||||||
|
NAMES
|
||||||
|
cmocka.h
|
||||||
|
PATHS
|
||||||
|
${CMOCKA_ROOT_DIR}/include
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(CMOCKA_LIBRARY
|
||||||
|
NAMES
|
||||||
|
cmocka
|
||||||
|
PATHS
|
||||||
|
${CMOCKA_ROOT_DIR}/include
|
||||||
|
)
|
||||||
|
|
||||||
|
if (CMOCKA_LIBRARY)
|
||||||
|
set(CMOCKA_LIBRARIES
|
||||||
|
${CMOCKA_LIBRARIES}
|
||||||
|
${CMOCKA_LIBRARY}
|
||||||
|
)
|
||||||
|
endif (CMOCKA_LIBRARY)
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(CMocka DEFAULT_MSG CMOCKA_LIBRARIES CMOCKA_INCLUDE_DIR)
|
||||||
|
|
||||||
|
# show the CMOCKA_INCLUDE_DIR and CMOCKA_LIBRARIES variables only in the advanced view
|
||||||
|
mark_as_advanced(CMOCKA_INCLUDE_DIR CMOCKA_LIBRARIES)
|
@@ -1,62 +0,0 @@
|
|||||||
# - Try to find CMockery
|
|
||||||
# Once done this will define
|
|
||||||
#
|
|
||||||
# CMOCKERY_ROOT_DIR - Set this variable to the root installation of CMockery
|
|
||||||
#
|
|
||||||
# Read-Only variables:
|
|
||||||
# CMOCKERY_FOUND - system has CMockery
|
|
||||||
# CMOCKERY_INCLUDE_DIR - the CMockery include directory
|
|
||||||
# CMOCKERY_LIBRARIES - Link these to use CMockery
|
|
||||||
# CMOCKERY_DEFINITIONS - Compiler switches required for using CMockery
|
|
||||||
#
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright (c) 2011-2012 Andreas Schneider <asn@cryptomilk.org>
|
|
||||||
#
|
|
||||||
# Distributed under the OSI-approved BSD License (the "License");
|
|
||||||
# see accompanying file Copyright.txt for details.
|
|
||||||
#
|
|
||||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
|
||||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
# See the License for more information.
|
|
||||||
#=============================================================================
|
|
||||||
#
|
|
||||||
|
|
||||||
set(_OPENSSL_ROOT_PATHS
|
|
||||||
"C:/OpenSSL/"
|
|
||||||
$ENV{PROGRAMFILES}/cmockery/include
|
|
||||||
)
|
|
||||||
|
|
||||||
find_path(OPENSSL_ROOT_DIR
|
|
||||||
NAMES
|
|
||||||
include/google/cmockery.h
|
|
||||||
PATHS
|
|
||||||
${_OPENSSL_ROOT_PATHS}
|
|
||||||
)
|
|
||||||
mark_as_advanced(OPENSSL_ROOT_DIR)
|
|
||||||
|
|
||||||
find_path(CMOCKERY_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
google/cmockery.h
|
|
||||||
PATHS
|
|
||||||
${CMOCKERY_ROOT_DIR}/include
|
|
||||||
)
|
|
||||||
|
|
||||||
find_library(CMOCKERY_LIBRARY
|
|
||||||
NAMES
|
|
||||||
cmockery
|
|
||||||
PATHS
|
|
||||||
${CMOCKERY_ROOT_DIR}/include
|
|
||||||
)
|
|
||||||
|
|
||||||
if (CMOCKERY_LIBRARY)
|
|
||||||
set(CMOCKERY_LIBRARIES
|
|
||||||
${CMOCKERY_LIBRARIES}
|
|
||||||
${CMOCKERY_LIBRARY}
|
|
||||||
)
|
|
||||||
endif (CMOCKERY_LIBRARY)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(CMockery DEFAULT_MSG CMOCKERY_LIBRARIES CMOCKERY_INCLUDE_DIR)
|
|
||||||
|
|
||||||
# show the CMOCKERY_INCLUDE_DIR and CMOCKERY_LIBRARIES variables only in the advanced view
|
|
||||||
mark_as_advanced(CMOCKERY_INCLUDE_DIR CMOCKERY_LIBRARIES)
|
|
@@ -8,7 +8,7 @@ set(TORTURE_LIBRARY torture)
|
|||||||
|
|
||||||
include_directories(
|
include_directories(
|
||||||
${LIBSSH_PUBLIC_INCLUDE_DIRS}
|
${LIBSSH_PUBLIC_INCLUDE_DIRS}
|
||||||
${CMOCKERY_INCLUDE_DIR}
|
${CMOCKA_INCLUDE_DIR}
|
||||||
${OPENSSL_INCLUDE_DIRS}
|
${OPENSSL_INCLUDE_DIRS}
|
||||||
${GCRYPT_INCLUDE_DIRS}
|
${GCRYPT_INCLUDE_DIRS}
|
||||||
${ZLIB_INCLUDE_DIRS}
|
${ZLIB_INCLUDE_DIRS}
|
||||||
@@ -20,7 +20,7 @@ include_directories(
|
|||||||
# create test library
|
# create test library
|
||||||
add_library(${TORTURE_LIBRARY} STATIC cmdline.c torture.c)
|
add_library(${TORTURE_LIBRARY} STATIC cmdline.c torture.c)
|
||||||
target_link_libraries(${TORTURE_LIBRARY}
|
target_link_libraries(${TORTURE_LIBRARY}
|
||||||
${CMOCKERY_LIBRARY}
|
${CMOCKA_LIBRARY}
|
||||||
${LIBSSH_STATIC_LIBRARY}
|
${LIBSSH_STATIC_LIBRARY}
|
||||||
${LIBSSH_LINK_LIBRARIES}
|
${LIBSSH_LINK_LIBRARIES}
|
||||||
${LIBSSH_THREADS_STATIC_LIBRARY}
|
${LIBSSH_THREADS_STATIC_LIBRARY}
|
||||||
@@ -30,7 +30,7 @@ target_link_libraries(${TORTURE_LIBRARY}
|
|||||||
|
|
||||||
set(TEST_TARGET_LIBRARIES
|
set(TEST_TARGET_LIBRARIES
|
||||||
${TORTURE_LIBRARY}
|
${TORTURE_LIBRARY}
|
||||||
${CMOCKERY_LIBRARY}
|
${CMOCKA_LIBRARY}
|
||||||
${LIBSSH_STATIC_LIBRARY}
|
${LIBSSH_STATIC_LIBRARY}
|
||||||
${LIBSSH_LINK_LIBRARIES}
|
${LIBSSH_LINK_LIBRARIES}
|
||||||
${LIBSSH_THREADS_STATIC_LIBRARY}
|
${LIBSSH_THREADS_STATIC_LIBRARY}
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
project(clienttests C)
|
project(clienttests C)
|
||||||
|
|
||||||
add_cmockery_test(torture_algorithms torture_algorithms.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_algorithms torture_algorithms.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_auth torture_auth.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_auth torture_auth.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_connect torture_connect.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_connect torture_connect.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_knownhosts torture_knownhosts.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_knownhosts torture_knownhosts.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_proxycommand torture_proxycommand.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_proxycommand torture_proxycommand.c ${TORTURE_LIBRARY})
|
||||||
if (WITH_SFTP)
|
if (WITH_SFTP)
|
||||||
add_cmockery_test(torture_sftp_static torture_sftp_static.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_sftp_static torture_sftp_static.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_sftp_dir torture_sftp_dir.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_sftp_dir torture_sftp_dir.c ${TORTURE_LIBRARY})
|
||||||
endif (WITH_SFTP)
|
endif (WITH_SFTP)
|
||||||
|
@@ -37,7 +37,7 @@
|
|||||||
#include "libssh/priv.h"
|
#include "libssh/priv.h"
|
||||||
#include "libssh/sftp.h"
|
#include "libssh/sftp.h"
|
||||||
|
|
||||||
#include <google/cmockery.h>
|
#include <cmocka.h>
|
||||||
|
|
||||||
/* Used by main to communicate with parse_opt. */
|
/* Used by main to communicate with parse_opt. */
|
||||||
struct argument_s {
|
struct argument_s {
|
||||||
|
@@ -1,16 +1,16 @@
|
|||||||
project(unittests C)
|
project(unittests C)
|
||||||
|
|
||||||
add_cmockery_test(torture_buffer torture_buffer.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_buffer torture_buffer.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_callbacks torture_callbacks.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_callbacks torture_callbacks.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_init torture_init.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_init torture_init.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_list torture_list.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_list torture_list.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_misc torture_misc.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_misc torture_misc.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_options torture_options.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_options torture_options.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_isipaddr torture_isipaddr.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_isipaddr torture_isipaddr.c ${TORTURE_LIBRARY})
|
||||||
if (UNIX AND NOT WIN32)
|
if (UNIX AND NOT WIN32)
|
||||||
# requires ssh-keygen
|
# requires ssh-keygen
|
||||||
add_cmockery_test(torture_keyfiles torture_keyfiles.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_keyfiles torture_keyfiles.c ${TORTURE_LIBRARY})
|
||||||
add_cmockery_test(torture_pki torture_pki.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_pki torture_pki.c ${TORTURE_LIBRARY})
|
||||||
# requires pthread
|
# requires pthread
|
||||||
add_cmockery_test(torture_rand torture_rand.c ${TORTURE_LIBRARY})
|
add_cmocka_test(torture_rand torture_rand.c ${TORTURE_LIBRARY})
|
||||||
endif (UNIX AND NOT WIN32)
|
endif (UNIX AND NOT WIN32)
|
||||||
|
Reference in New Issue
Block a user