mirror of
https://github.com/WerWolv/ImHex-Patterns.git
synced 2026-03-27 23:37:04 -05:00
tests/patterns: support multiple test files for a pattern (#161)
Allow either a single test file in tests/patterns/${pattern}.hexpat.${ext},
as we do now, or multiple files in tests/patterns/${pattern}.hexpat/*.
Closes #158.
This commit is contained in:
@@ -22,16 +22,22 @@ set_target_properties(patterns_tests PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE
|
||||
foreach (pattern IN LISTS PATTERNS)
|
||||
get_filename_component(PATTERN_NAME ${pattern} NAME)
|
||||
|
||||
file(GLOB TEST_FILES "${CMAKE_CURRENT_SOURCE_DIR}/test_data/${PATTERN_NAME}.*")
|
||||
|
||||
if (TEST_FILES)
|
||||
list(GET TEST_FILES 0 TEST_FILE)
|
||||
else ()
|
||||
set(TEST_FILE "")
|
||||
file(GLOB TEST_FILES "${CMAKE_CURRENT_SOURCE_DIR}/test_data/${PATTERN_NAME}/*")
|
||||
if (NOT TEST_FILES)
|
||||
file(GLOB TEST_FILES "${CMAKE_CURRENT_SOURCE_DIR}/test_data/${PATTERN_NAME}.*")
|
||||
list(SUBLIST TEST_FILES 0 1 TEST_FILES)
|
||||
endif ()
|
||||
|
||||
set(TEST_NAME "Patterns/${PATTERN_NAME}")
|
||||
|
||||
add_test(NAME ${TEST_NAME} COMMAND patterns_tests "${PATTERN_NAME}" "${pattern}" "${PATTERN_INCLUDES}" "${TEST_FILE}" WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
set_tests_properties(${TEST_NAME} PROPERTIES SKIP_RETURN_CODE 77)
|
||||
endforeach ()
|
||||
if (TEST_FILES)
|
||||
foreach (TEST_FILE IN LISTS TEST_FILES)
|
||||
get_filename_component(TEST_FILENAME ${TEST_FILE} NAME)
|
||||
set(TEST_NAME "Patterns/${PATTERN_NAME}/${TEST_FILENAME}")
|
||||
add_test(NAME ${TEST_NAME} COMMAND patterns_tests "${PATTERN_NAME}" "${pattern}" "${PATTERN_INCLUDES}" "${TEST_FILE}" WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
set_tests_properties(${TEST_NAME} PROPERTIES SKIP_RETURN_CODE 77)
|
||||
endforeach ()
|
||||
else ()
|
||||
set(TEST_NAME "Patterns/${PATTERN_NAME}")
|
||||
add_test(NAME ${TEST_NAME} COMMAND patterns_tests "${PATTERN_NAME}" "${pattern}" "${PATTERN_INCLUDES}" WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
set_tests_properties(${TEST_NAME} PROPERTIES SKIP_RETURN_CODE 77)
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
Reference in New Issue
Block a user