Add google test for testing the library.
This commit is contained in:
parent
d09c8b3864
commit
07edd92023
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -1,3 +1,6 @@
|
||||
[submodule "external/cJSON"]
|
||||
path = external/cJSON
|
||||
url = https://github.com/DaveGamble/cJSON.git
|
||||
[submodule "external/googletest"]
|
||||
path = external/googletest
|
||||
url = https://github.com/google/googletest.git
|
||||
|
||||
@ -19,6 +19,7 @@ set(BUILD_PLATFORM MEMORY CACHE STRING "Platform to build for")
|
||||
set_property(CACHE BUILD_PLATFORM PROPERTY STRINGS ${VALID_BUILD_PLATFORM})
|
||||
|
||||
option(BUILD_HOST_TOOLS "Build offline tools" ON)
|
||||
option(RUN_TESTS "Run the test suite to verify everything is ok!" ON)
|
||||
|
||||
string(TOLOWER ${BUILD_PLATFORM} PLATFORM_FILE)
|
||||
|
||||
@ -39,3 +40,10 @@ if (BUILD_HOST_TOOLS)
|
||||
target_compile_definitions(mffs PRIVATE BUILD_PLATFORM_FILE)
|
||||
target_compile_definitions(mffs PRIVATE BUILD_HOST_TOOLS)
|
||||
endif()
|
||||
|
||||
if(RUN_TESTS)
|
||||
enable_testing()
|
||||
include(GoogleTest)
|
||||
add_subdirectory("${PROJECT_SOURCE_DIR}/external/googletest" "external/googletest")
|
||||
add_subdirectory(test)
|
||||
endif()
|
||||
1
external/googletest
vendored
Submodule
1
external/googletest
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 56246cdb94de94f7f43c9df59635db92c41d4064
|
||||
19
test/CMakeLists.txt
Normal file
19
test/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
||||
project(MiniFFSTests)
|
||||
|
||||
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
include_directories(../includes)
|
||||
link_libraries(miniffs)
|
||||
|
||||
set(TESTS_SRC fs_opening.cpp)
|
||||
|
||||
add_executable(miniffs_test)
|
||||
target_include_directories(miniffs_test PUBLIC ${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})
|
||||
target_sources(miniffs_test PRIVATE ${TESTS_SRC})
|
||||
target_link_libraries(miniffs_test gtest gtest_main Threads::Threads)
|
||||
|
||||
gtest_discover_tests(miniffs_test
|
||||
WORKING_DIRECTORY ${PROJECT_DIR}
|
||||
PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${PROJECT_DIR}"
|
||||
)
|
||||
7
test/fs_opening.cpp
Normal file
7
test/fs_opening.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
/******************************************************************************
|
||||
* MiniFFS : Mini Flat File System
|
||||
* This file is part of the test suite of MiniFFS
|
||||
*
|
||||
* Copyright (c) 2008-2022 986-Studio. All rights reserved.
|
||||
*
|
||||
******************************************************************************/
|
||||
Loading…
x
Reference in New Issue
Block a user