mirror of
https://gitlab.freedesktop.org/uchardet/uchardet.git
synced 2025-12-08 01:36:41 +08:00
Some charsets are simply not supported (ex: fr:iso-8859-1), some are temporarily deactivated (ex: hu:iso-8859-2) and some are wrongly detected as closely related charsets. These were broken (or not efficient) from the start, and there is no need to pollute the `make test` output with these, which may make us miss when actual regressions will occur. So let's hide these away for now until we can improve the situation.
50 lines
1.3 KiB
CMake
50 lines
1.3 KiB
CMake
set(
|
|
UCHARDET_TEST_SOURCES
|
|
uchardet-tests.c
|
|
)
|
|
|
|
add_executable(
|
|
uchardet-tests
|
|
${UCHARDET_TEST_SOURCES}
|
|
)
|
|
|
|
target_link_libraries(
|
|
uchardet-tests
|
|
libuchardet
|
|
)
|
|
|
|
set_target_properties(
|
|
uchardet-tests
|
|
PROPERTIES
|
|
LINKER_LANGUAGE
|
|
C
|
|
OUTPUT_NAME
|
|
uchardet-tests
|
|
)
|
|
|
|
# Iterate through all langs.
|
|
file(GLOB dirs "[a-z][a-z]")
|
|
foreach(dir ${dirs})
|
|
get_filename_component(lang ${dir} NAME)
|
|
file(GLOB files "${dir}/*")
|
|
# Iterate through all files.
|
|
foreach(file ${files})
|
|
get_filename_component(charset ${file} NAME_WE)
|
|
# These are tests known to fail (not supported or not efficient
|
|
# enough). We will have to take a closer look and fix these, but
|
|
# there is no need to break the whole `make test` right now,
|
|
# which may make actual regressions harder to notice.
|
|
if ("${lang}:${charset}" STREQUAL "hu:iso-8859-2" OR
|
|
"${lang}:${charset}" STREQUAL "el:windows-1253" OR
|
|
"${lang}:${charset}" STREQUAL "ru:windows-1251" OR
|
|
"${lang}:${charset}" STREQUAL "fr:iso-8859-1" OR
|
|
"${lang}:${charset}" STREQUAL "he:iso-8859-8")
|
|
message(STATUS "Skipping test ${lang}:${charset} (known broken)")
|
|
else()
|
|
add_test(NAME "${lang}:${charset}"
|
|
COMMAND uchardet-tests ${file})
|
|
endif()
|
|
endforeach()
|
|
endforeach()
|
|
|