basedOpinionated utility library |
git clone git://git.dimitrijedobrota.com/based.git |
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING |
CMakeLists.txt (1877B)
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)
32 ## ----- Trait -----
35 add_test(trait invoke_result_test)
36 add_test(trait is_array_test)
37 add_test(trait is_base_of_test)
38 add_test(trait is_class_test)
39 add_test(trait is_const_test)
40 add_test(trait is_enum_test)
41 add_test(trait is_lvalue_reference_test)
42 add_test(trait is_null_pointer_test)
43 add_test(trait is_rvalue_reference_test)
44 add_test(trait is_void_test)
45 add_test(trait remove_const_test)
46 add_test(trait remove_cvref_test)
47 add_test(trait remove_cv_test)
48 add_test(trait remove_pointer_test)
49 add_test(trait remove_reference_test)
50 add_test(trait remove_volatile_test)
51 add_test(trait signature_test_test)
53 ## ----- Concepts -----
55 add_test(concepts callable_test)
57 ## ----- Algorithm -----
59 add_test(algorithms max_test)
60 add_test(algorithms min_test)
62 ## ----- Utility -----
64 add_test(utility buffer_test)
65 add_test(utility scopeguard_test)
67 ## ----- Functional -----
69 add_test(functional curry_test)
70 add_test(functional function_test)
72 ## ------ Enum -----
74 add_test(. enum_test)
75 add_test(. enum_flag_test)
77 ## ----- List -----
79 add_test(. list_test)
81 ## ----- String -----
83 add_test(. string_literal_test)
85 # ---- End-of-file commands ----
87 add_folders(Test)