basedOpinionated utility library |
git clone git://git.dimitrijedobrota.com/based.git |
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING |
CMakeLists.txt (1974B)
0 cmake_minimum_required(VERSION 3.14)
2 project(basedTests LANGUAGES CXX)
4 include(../cmake/project-is-top-level.cmake)
5 include(../cmake/folders.cmake)
7 # ---- Dependencies ----
9 if(PROJECT_IS_TOP_LEVEL)
10 find_package(based REQUIRED)
11 enable_testing()
12 endif()
14 find_package(Catch2 REQUIRED)
15 include(Catch)
17 # ---- Tests ----
19 function(add_test DIR NAME)
20 add_executable("${NAME}" "source/${DIR}/${NAME}.cpp")
21 target_link_libraries("${NAME}" PRIVATE based::based)
22 target_link_libraries("${NAME}" PRIVATE Catch2::Catch2WithMain)
23 target_compile_features("${NAME}" PRIVATE cxx_std_20)
24 catch_discover_tests("${NAME}")
25 endfunction()
27 ## ----- Types -----
29 add_test(types strong_type_test)
30 add_test(types type_test)
31 add_test(types limits)
32 add_test(types literals)
34 ## ----- Trait -----
37 add_test(trait invoke_result_test)
38 add_test(trait is_array_test)
39 add_test(trait is_base_of_test)
40 add_test(trait is_class_test)
41 add_test(trait is_const_test)
42 add_test(trait is_enum_test)
43 add_test(trait is_lvalue_reference_test)
44 add_test(trait is_null_pointer_test)
45 add_test(trait is_rvalue_reference_test)
46 add_test(trait is_void_test)
47 add_test(trait remove_const_test)
48 add_test(trait remove_cvref_test)
49 add_test(trait remove_cv_test)
50 add_test(trait remove_pointer_test)
51 add_test(trait remove_reference_test)
52 add_test(trait remove_volatile_test)
53 add_test(trait signature_test_test)
55 ## ----- Concepts -----
57 add_test(concepts callable_test)
59 ## ----- Algorithm -----
61 add_test(algorithms max_test)
62 add_test(algorithms min_test)
64 ## ----- Utility -----
66 add_test(utility buffer_test)
67 add_test(utility scopeguard_test)
69 ## ----- Functional -----
71 add_test(functional curry_test)
72 add_test(functional function_test)
74 ## ------ Enum -----
76 add_test(. enum_test)
77 add_test(. enum_flag_test)
79 ## ----- List -----
81 add_test(. list_test)
83 ## ----- String -----
85 add_test(. string_literal_test)
87 ## ----- Char -----
89 add_test(char mapper_test)
91 # ---- End-of-file commands ----
93 add_folders(Test)