diff options
Diffstat (limited to 'src/tests/CMakeLists.txt')
| -rw-r--r-- | src/tests/CMakeLists.txt | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt new file mode 100644 index 0000000..8e71366 --- /dev/null +++ b/src/tests/CMakeLists.txt @@ -0,0 +1,53 @@ +cmake_minimum_required(VERSION 3.16) + +find_package(Qt6 REQUIRED COMPONENTS Core) +find_package(GTest REQUIRED) + +# --------------------------------------------------------------------------- +# meta.ini case-normalization helper tests +# --------------------------------------------------------------------------- +add_executable(test_metainiutils EXCLUDE_FROM_ALL + test_metainiutils.cpp + ${CMAKE_SOURCE_DIR}/src/src/metainiutils.cpp +) +set_target_properties(test_metainiutils PROPERTIES + AUTOMOC OFF + CXX_STANDARD 23 + CXX_STANDARD_REQUIRED ON +) +target_include_directories(test_metainiutils PRIVATE + ${CMAKE_SOURCE_DIR}/src/src +) +target_link_libraries(test_metainiutils PRIVATE + Qt6::Core + GTest::gtest + GTest::gtest_main +) +add_test(NAME test_metainiutils COMMAND test_metainiutils) + +# --------------------------------------------------------------------------- +# External directory mapping (SKSE Log Redirector style) tests +# +# Exercises the deploy/cleanup logic for `isDirectory && createTarget` +# mappings — directory-symlink path plus the per-file fallback when the +# destination already has real content. The behavior is mirrored from +# FuseConnector::deployExternalMappings so the test can run without +# bringing in libfuse or the rest of the organizer dependency tree. +# --------------------------------------------------------------------------- +add_executable(test_external_dir_mapping EXCLUDE_FROM_ALL + test_external_dir_mapping.cpp +) +set_target_properties(test_external_dir_mapping PROPERTIES + AUTOMOC OFF + CXX_STANDARD 23 + CXX_STANDARD_REQUIRED ON +) +target_link_libraries(test_external_dir_mapping PRIVATE + GTest::gtest + GTest::gtest_main +) +add_test(NAME test_external_dir_mapping COMMAND test_external_dir_mapping) + +# Register a "fluorine-tests" umbrella target that builds every test exe. +add_custom_target(fluorine-tests + DEPENDS test_metainiutils test_external_dir_mapping) |
