Browse Source

Add: tests to CMakeLists.txt (#173)

* Add: tests to CMakeLists.txt

* Disable compilation of charwidth, graphemetest and normtest because of missing getline

* Refactoring: UTF8PROC_ENABLE_TESTING default Off, move tests that don't compile on windows to NOT MSVC section, add testing to appveyor.yml

* Add: testing to travis

* Changed: flag to WIN32 because MinGW has the same problem as MSVC

* Commented out graphemetest and normtest because they fail.

* Re-added: graphemetest and normtest added missing data to the path of the text files.

* Fix: last commit was party wrong normtest failed.

* * Commented out graphemetest and normtest because they fail, because in CMakeLists is missing building of data.
pull/174/head
Andreas-Schniertshauer 5 years ago
committed by GitHub
parent
commit
47edf655b3
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      .travis.yml
  2. 35
      CMakeLists.txt
  3. 14
      appveyor.yml

4
.travis.yml

@ -11,5 +11,5 @@ script:
- make check
- make data && diff data/utf8proc_data.c.new utf8proc_data.c
- make clean && git status --ignored --porcelain && test -z "$(git status --ignored --porcelain)"
- (mkdir build_static && cd build_static && cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON && make)
- (mkdir build_shared && cd build_shared && cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DBUILD_SHARED_LIBS=ON && make)
- (mkdir build_static && cd build_static && cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DUTF8PROC_ENABLE_TESTING=On && make && ctest)
- (mkdir build_shared && cd build_shared && cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DBUILD_SHARED_LIBS=ON -DUTF8PROC_ENABLE_TESTING=On && make && ctest)

35
CMakeLists.txt

@ -14,6 +14,7 @@ set(SO_MINOR 3)
set(SO_PATCH 1)
option(UTF8PROC_INSTALL "Enable installation of utf8proc" On)
option(UTF8PROC_ENABLE_TESTING "Enable testing of utf8proc" Off)
add_library (utf8proc
utf8proc.c
@ -59,3 +60,37 @@ if (UTF8PROC_INSTALL)
"${PROJECT_SOURCE_DIR}/utf8proc.h"
DESTINATION include)
endif()
if(UTF8PROC_ENABLE_TESTING)
enable_testing()
add_executable(case test/tests.h test/tests.c utf8proc.h test/case.c)
target_link_libraries(case utf8proc)
add_executable(custom test/tests.h test/tests.c utf8proc.h test/custom.c)
target_link_libraries(custom utf8proc)
add_executable(iterate test/tests.h test/tests.c utf8proc.h test/iterate.c)
target_link_libraries(iterate utf8proc)
add_executable(misc test/tests.h test/tests.c utf8proc.h test/misc.c)
target_link_libraries(misc utf8proc)
add_executable(printproperty test/tests.h test/tests.c utf8proc.h test/printproperty.c)
target_link_libraries(printproperty utf8proc)
add_executable(valid test/tests.h test/tests.c utf8proc.h test/valid.c)
target_link_libraries(valid utf8proc)
add_test(testcase case)
add_test(testcustom custom)
add_test(testiterate iterate)
add_test(testmisc misc)
add_test(testprintproperty printproperty)
add_test(testvalid valid)
if (NOT WIN32)
# Some test disabled, because they don't compile on Windows, missing getline, ...
add_executable(charwidth test/tests.h test/tests.c utf8proc.h test/charwidth.c)
target_link_libraries(charwidth utf8proc)
add_executable(graphemetest test/tests.h test/tests.c utf8proc.h test/graphemetest.c)
target_link_libraries(graphemetest utf8proc)
add_executable(normtest test/tests.h test/tests.c utf8proc.h test/normtest.c)
target_link_libraries(normtest utf8proc)
add_test(testcharwidth charwidth)
#add_test(testgraphemetest graphemetest data/GraphemeBreakTest.txt)
#add_test(testnormtest normtest data/NormalizationTest.txt)
endif()
endif()

14
appveyor.yml

@ -16,23 +16,27 @@ build_script:
throw "There are newer queued builds for this pull request, failing early." }
- mkdir msvc_static
- cd msvc_static
- cmake ..
- cmake .. -DUTF8PROC_ENABLE_TESTING=On
- cmake --build .
- ctest
- mkdir ..\msvc_shared
- cd ..\msvc_shared
- cmake .. -DBUILD_SHARED_LIBS=ON
- cmake .. -DBUILD_SHARED_LIBS=ON -DUTF8PROC_ENABLE_TESTING=On
- cmake --build .
- ctest
- set PATH=C:\MinGW\bin;%PATH%
- C:\MinGW\msys\1.0\bin\sh --login -c "
cd /c/projects/utf8proc &&
mkdir mingw_static &&
cd mingw_static &&
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -G'MSYS Makefiles' &&
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DUTF8PROC_ENABLE_TESTING=On -G'MSYS Makefiles' &&
make &&
ctest &&
mkdir ../mingw_shared &&
cd ../mingw_shared &&
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DBUILD_SHARED_LIBS=ON -G'MSYS Makefiles' &&
make
cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DBUILD_SHARED_LIBS=ON -DUTF8PROC_ENABLE_TESTING=On -G'MSYS Makefiles' &&
make &&
ctest
"
on_finish:

Loading…
Cancel
Save