based

Opinionated utility library
git clone git://git.dimitrijedobrota.com/based.git
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING

CMakeLists.txt (2126B)


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 ## ----- Integral -----
29 add_test(integral strong_type_test)
30 add_test(integral type_test)
31 add_test(integral limits_test)
32 add_test(integral literals_test)
34 ## ----- Trait -----
36 add_test(trait invoke_result_test)
37 add_test(trait remove_const_test)
38 add_test(trait remove_cvref_test)
39 add_test(trait remove_cv_test)
40 add_test(trait remove_pointer_test)
41 add_test(trait remove_reference_test)
42 add_test(trait remove_volatile_test)
43 add_test(trait signature_test)
45 ## ----- Concept -----
47 add_test(concept callable_test)
48 add_test(concept is_array_test)
49 add_test(concept is_base_of_test)
50 add_test(concept is_class_test)
51 add_test(concept is_const_test)
52 add_test(concept is_enum_test)
53 add_test(concept is_lvalue_reference_test)
54 add_test(concept is_null_pointer_test)
55 add_test(concept is_rvalue_reference_test)
56 add_test(concept is_void_test)
58 ## ----- Algorithm -----
60 add_test(algorithm max_test)
61 add_test(algorithm min_test)
63 ## ----- Utility -----
65 add_test(utility buffer_test)
66 add_test(utility scopeguard_test)
67 add_test(utility static_view_test)
69 ## ----- Functional -----
71 add_test(functional curry_test)
72 add_test(functional function_test)
74 ## ------ Enum -----
76 add_test(enum standard_test)
77 add_test(enum bitmask_test)
79 ## ----- String -----
81 add_test(string literal_test)
82 add_test(string format_test)
84 ## ----- Char -----
86 add_test(character mapper_test)
88 ## ----- Container -----
90 add_test(container list_test)
91 add_test(container array_test)
93 # ---- End-of-file commands ----
95 add_folders(Test)