2
0
mirror of https://github.com/boostorg/hana.git synced 2026-02-13 12:32:10 +00:00

CMake: Automatically discover unit tests and examples.

This commit is contained in:
Louis Dionne
2014-06-25 23:35:56 -04:00
parent 52eead977e
commit 65796aeb6e
2 changed files with 16 additions and 255 deletions

View File

@@ -12,98 +12,12 @@ function(boost_hana_add_example name)
add_dependencies(examples example.${name})
endfunction()
boost_hana_add_example(core.convert)
boost_hana_add_example(core.is_a)
boost_hana_add_example(core.typeclass)
boost_hana_add_example(functional.always.basic)
boost_hana_add_example(functional.always.dependent)
boost_hana_add_example(functional.apply)
boost_hana_add_example(functional.arg)
boost_hana_add_example(functional.compose)
boost_hana_add_example(functional.curry)
boost_hana_add_example(functional.demux)
boost_hana_add_example(functional.fix)
boost_hana_add_example(functional.flip)
boost_hana_add_example(functional.id)
boost_hana_add_example(functional.lockstep)
boost_hana_add_example(functional.on)
boost_hana_add_example(functional.partial)
boost_hana_add_example(functional.placeholder)
boost_hana_add_example(integral.comparable)
boost_hana_add_example(integral.literals)
boost_hana_add_example(integral.logical.and)
boost_hana_add_example(integral.logical.eval_if)
boost_hana_add_example(integral.logical.or)
boost_hana_add_example(integral.operators)
boost_hana_add_example(list.applicative.overview)
boost_hana_add_example(list.comparable)
boost_hana_add_example(list.concat)
boost_hana_add_example(list.cons)
boost_hana_add_example(list.filter)
boost_hana_add_example(list.foldable.all)
boost_hana_add_example(list.foldable.any)
boost_hana_add_example(list.foldable.count)
boost_hana_add_example(list.foldable.elem)
boost_hana_add_example(list.foldable.find)
boost_hana_add_example(list.foldable.foldl)
boost_hana_add_example(list.foldable.foldl1)
boost_hana_add_example(list.foldable.foldr)
boost_hana_add_example(list.foldable.foldr1)
boost_hana_add_example(list.foldable.length)
boost_hana_add_example(list.foldable.minimum)
boost_hana_add_example(list.foldable.minimum_by)
boost_hana_add_example(list.foldable.none)
boost_hana_add_example(list.foldable.unpack)
boost_hana_add_example(list.functor.adjust)
boost_hana_add_example(list.functor.fill)
boost_hana_add_example(list.functor.fmap)
boost_hana_add_example(list.functor.replace)
boost_hana_add_example(list.init)
boost_hana_add_example(list.iterable.at)
boost_hana_add_example(list.iterable.drop)
boost_hana_add_example(list.iterable.overview)
boost_hana_add_example(list.list_c)
boost_hana_add_example(list.list_t)
boost_hana_add_example(list.monad.overview)
boost_hana_add_example(list.partition)
boost_hana_add_example(list.permutations)
boost_hana_add_example(list.reverse)
boost_hana_add_example(list.snoc)
boost_hana_add_example(list.sort)
boost_hana_add_example(list.sort_by)
boost_hana_add_example(list.take)
boost_hana_add_example(list.take_until)
boost_hana_add_example(list.take_while)
boost_hana_add_example(list.to)
boost_hana_add_example(list.zip)
boost_hana_add_example(list.zip_with)
boost_hana_add_example(logical.default_instance.eval_if)
boost_hana_add_example(maybe.api)
boost_hana_add_example(maybe.applicative)
boost_hana_add_example(maybe.comparable)
boost_hana_add_example(maybe.functor)
boost_hana_add_example(maybe.monad)
boost_hana_add_example(pair.comparable)
boost_hana_add_example(range.foldable.lazy_foldl)
boost_hana_add_example(range.foldable.lazy_foldr)
boost_hana_add_example(range.foldable.product)
boost_hana_add_example(range.iterable.drop_while)
boost_hana_add_example(range.iterable.overview)
boost_hana_add_example(range.range)
boost_hana_add_example(type.comparable)
boost_hana_add_example(type.construct)
boost_hana_add_example(type.decltype)
boost_hana_add_example(type.initializer_list)
boost_hana_add_example(type.sizeof)
boost_hana_add_example(type.template)
boost_hana_add_example(type.trait)
boost_hana_add_example(type.trait_)
boost_hana_add_example(type.untype)
file(GLOB_RECURSE BOOST_HANA_EXAMPLE_SOURCES
RELATIVE ${CMAKE_CURRENT_LIST_DIR}
"*.cpp")
foreach(file IN LISTS BOOST_HANA_EXAMPLE_SOURCES)
string(REGEX REPLACE "\\.cpp$" "" name ${file})
string(REGEX REPLACE "/" "." name ${name})
boost_hana_add_example(${name})
endforeach()

View File

@@ -13,164 +13,11 @@ function(boost_hana_add_test name)
endfunction()
boost_hana_add_test(adapted.std_array.iterable)
boost_hana_add_test(adapted.std_integer_sequence.iterable)
boost_hana_add_test(adapted.std_integral_constant.api)
boost_hana_add_test(adapted.std_integral_constant.bug_datatype_inheritance)
boost_hana_add_test(adapted.std_integral_constant.integral_interop)
boost_hana_add_test(adapted.std_list.bug)
boost_hana_add_test(adapted.std_list.functor)
boost_hana_add_test(adapted.std_list.iterable)
boost_hana_add_test(adapted.std_pair.pair)
boost_hana_add_test(adapted.std_tuple.applicative)
boost_hana_add_test(adapted.std_tuple.functor)
boost_hana_add_test(adapted.std_tuple.iterable)
boost_hana_add_test(adapted.std_tuple.monad)
boost_hana_add_test(comparable.mcd_equal)
boost_hana_add_test(comparable.mcd_not_equal)
boost_hana_add_test(core.convert.default)
boost_hana_add_test(core.convert.specialize)
boost_hana_add_test(core.datatype)
boost_hana_add_test(core.instantiates)
boost_hana_add_test(core.is_a)
boost_hana_add_test(core.typeclass)
boost_hana_add_test(detail.at_index)
boost_hana_add_test(detail.integer_sequence)
boost_hana_add_test(detail.left_folds)
boost_hana_add_test(foldable.all_of)
boost_hana_add_test(foldable.count)
boost_hana_add_test(foldable.elem)
boost_hana_add_test(foldable.find)
boost_hana_add_test(foldable.foldl)
boost_hana_add_test(foldable.foldl1)
boost_hana_add_test(foldable.foldr)
boost_hana_add_test(foldable.foldr1)
boost_hana_add_test(foldable.lazy_foldl)
boost_hana_add_test(foldable.length)
boost_hana_add_test(foldable.maximum)
boost_hana_add_test(foldable.minimum)
boost_hana_add_test(foldable.product)
boost_hana_add_test(foldable.sum)
boost_hana_add_test(foldable.unpack)
boost_hana_add_test(functional.always)
boost_hana_add_test(functional.apply)
boost_hana_add_test(functional.arg)
boost_hana_add_test(functional.compose)
boost_hana_add_test(functional.curry)
boost_hana_add_test(functional.demux)
boost_hana_add_test(functional.fix)
boost_hana_add_test(functional.flip)
boost_hana_add_test(functional.id)
boost_hana_add_test(functional.lockstep)
boost_hana_add_test(functional.on)
boost_hana_add_test(functional.partial)
boost_hana_add_test(functional.placeholder)
boost_hana_add_test(functor.mcd_adjust)
boost_hana_add_test(functor.mcd_fmap)
boost_hana_add_test(integral.api)
boost_hana_add_test(integral.bug_constexpr_init)
boost_hana_add_test(integral.bug_strip_cv_qualifiers)
boost_hana_add_test(integral.comparable)
boost_hana_add_test(integral.literals)
boost_hana_add_test(integral.logical)
boost_hana_add_test(integral.operators)
boost_hana_add_test(iterable.at)
boost_hana_add_test(iterable.comparable)
boost_hana_add_test(iterable.drop)
boost_hana_add_test(iterable.drop_until)
boost_hana_add_test(iterable.drop_while)
boost_hana_add_test(iterable.foldable)
boost_hana_add_test(iterable.last)
boost_hana_add_test(list.applicative)
boost_hana_add_test(list.concat)
boost_hana_add_test(list.cons)
boost_hana_add_test(list.filter)
boost_hana_add_test(list.hetero.comparable)
boost_hana_add_test(list.hetero.foldable)
boost_hana_add_test(list.hetero.functor)
boost_hana_add_test(list.hetero.iterable)
boost_hana_add_test(list.init)
boost_hana_add_test(list.monad)
boost_hana_add_test(list.partition)
boost_hana_add_test(list.permutations)
boost_hana_add_test(list.reverse)
boost_hana_add_test(list.snoc)
boost_hana_add_test(list.sort)
boost_hana_add_test(list.sort_by)
boost_hana_add_test(list.take)
boost_hana_add_test(list.take_until)
boost_hana_add_test(list.take_while)
boost_hana_add_test(list.to)
boost_hana_add_test(list.type.bug_adl)
boost_hana_add_test(list.type.comparable)
boost_hana_add_test(list.type.foldable)
boost_hana_add_test(list.type.functor)
boost_hana_add_test(list.type.iterable)
boost_hana_add_test(list.zip)
boost_hana_add_test(list.zip_with)
boost_hana_add_test(logical.and)
boost_hana_add_test(logical.default_instance)
boost_hana_add_test(logical.if)
boost_hana_add_test(logical.not)
boost_hana_add_test(logical.or)
boost_hana_add_test(maybe.api)
boost_hana_add_test(maybe.applicative)
boost_hana_add_test(maybe.comparable)
boost_hana_add_test(maybe.functor)
boost_hana_add_test(maybe.monad)
boost_hana_add_test(monad.mcd_bind)
boost_hana_add_test(monad.mcd_join)
boost_hana_add_test(pair.comparable)
boost_hana_add_test(pair.pair)
boost_hana_add_test(range.comparable)
boost_hana_add_test(range.foldable)
boost_hana_add_test(range.iterable)
boost_hana_add_test(sandbox.array)
boost_hana_add_test(sandbox.assert)
boost_hana_add_test(sandbox.comparable_interop)
boost_hana_add_test(sandbox.function)
boost_hana_add_test(sandbox.infix)
boost_hana_add_test(sandbox.is_valid)
boost_hana_add_test(sandbox.lazy)
boost_hana_add_test(sandbox.llist)
boost_hana_add_test(sandbox.logical)
boost_hana_add_test(sandbox.map.foldable)
boost_hana_add_test(sandbox.matrix)
boost_hana_add_test(sandbox.operator)
boost_hana_add_test(sandbox.ratio)
boost_hana_add_test(sandbox.repeat)
boost_hana_add_test(sandbox.sfinae)
boost_hana_add_test(sandbox.string)
boost_hana_add_test(sandbox.tuple)
boost_hana_add_test(sandbox.worksheet)
boost_hana_add_test(type.bugs.adl)
boost_hana_add_test(type.bugs.clang_20046)
boost_hana_add_test(type.comparable)
boost_hana_add_test(type.decltype)
boost_hana_add_test(type.functor)
boost_hana_add_test(type.metafunction)
boost_hana_add_test(type.metafunction_class)
boost_hana_add_test(type.monad)
boost_hana_add_test(type.sizeof)
boost_hana_add_test(type.template)
boost_hana_add_test(type.trait)
boost_hana_add_test(type.trait_)
boost_hana_add_test(type.type)
boost_hana_add_test(hana)
file(GLOB_RECURSE BOOST_HANA_UNIT_TEST_SOURCES
RELATIVE ${CMAKE_CURRENT_LIST_DIR}
"*.cpp")
foreach(file IN LISTS BOOST_HANA_UNIT_TEST_SOURCES)
string(REGEX REPLACE "\\.cpp$" "" name ${file})
string(REGEX REPLACE "/" "." name ${name})
boost_hana_add_test(${name})
endforeach()