Fixing test build on gcc

This commit is contained in:
Michael Tryby
2019-03-21 18:08:05 -04:00
parent 0c56df4041
commit 48facd89d0
21 changed files with 47 additions and 43 deletions

View File

@@ -1,10 +1,20 @@
cmake_minimum_required(VERSION 3.12)
enable_testing()
set (Boost_USE_STATIC_LIBS OFF)
# Sets for output directory for executables and libraries
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
IF(MSVC)
set (Boost_USE_STATIC_LIBS OFF)
add_definitions(-DBOOST_ALL_DYN_LINK)
ENDIF(MSVC)
find_package(Boost COMPONENTS unit_test_framework)
include_directories (${Boost_INCLUDE_DIRS} ../../src/)
@@ -16,3 +26,6 @@ set (test_source
add_executable(test_errormanager ${test_source})
target_link_libraries(test_errormanager ${Boost_LIBRARIES})
add_test(NAME test_errormanager
COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_errormanager)

View File

@@ -1,7 +1,7 @@
#define BOOST_TEST_MODULE errormanager
#define BOOST_TEST_DYN_LINK
//#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include "util/errormanager.h"
@@ -37,19 +37,19 @@ BOOST_AUTO_TEST_SUITE(test_errormanager)
BOOST_AUTO_TEST_CASE (test_create_destroy)
{
error_handle_t *error_handle = NULL;
error_handle = error_new_manager(&mock_lookup);
error_handle = create_error_manager(&mock_lookup);
error_dst_manager(error_handle);
delete_error_manager(error_handle);
}
struct Fixture{
Fixture() {
error_message = NULL;
error_handle = error_new_manager(&mock_lookup);
error_handle = create_error_manager(&mock_lookup);
}
~Fixture() {
error_dst_manager(error_handle);
delete_error_manager(error_handle);
free(error_message);
}
int error;
@@ -60,21 +60,21 @@ struct Fixture{
BOOST_FIXTURE_TEST_CASE (test_set_clear, Fixture)
{
error = error_set(error_handle, 100);
error = set_error(error_handle, 100);
BOOST_CHECK(error == 100);
error_clear(error_handle);
error = error_check(error_handle, &error_message);
clear_error(error_handle);
error = check_error(error_handle, &error_message);
BOOST_CHECK(error == 0);
BOOST_CHECK(error_message == NULL);
}
BOOST_FIXTURE_TEST_CASE(test_set_check, Fixture)
{
error = error_set(error_handle, 100);
error = set_error(error_handle, 100);
BOOST_CHECK(error == 100);
error = error_check(error_handle, &error_message);
error = check_error(error_handle, &error_message);
BOOST_CHECK(check_string(error_message, MESSAGE_STRING));
}