# Copyright 2012 Mathieu Champlon # Copyright 2025 Alexander Grund # # Distributed under the Boost Software License version 1.0. (See # accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) import testing ; project : requirements BOOST_AUTO_TEST_MAIN BOOST_ALL_NO_LIB ../include ; path-constant parent : .. ; run /boost/tools/inspect//inspect/release : $(parent) -text -brief : : always_show_run_output : inspect ; explicit inspect ; rule run-test ( name : options * ) { run $(name) defined_1.cpp defined_2.cpp undefined.cpp /boost//unit_test_framework : : : $(options) : $(name)_ ; run $(name) undefined.cpp /boost//unit_test_framework : : : $(options) MOCK_USE_CONVERSIONS : $(name)_use_conversions ; run $(name) undefined.cpp /boost//unit_test_framework /boost//thread : : : $(options) MOCK_THREAD_SAFE BOOST_THREAD_USES_MOVE multi : $(name)_thread_safe ; } rule run-tests { for name in [ glob test_*.cpp ] { run-test $(name) ; } # Avoid object file getting to big on MinGW run-test detail/test_function.cpp : gcc,windows:on gcc,windows:space ; run-test detail/test_invocation.cpp ; run-test detail/test_is_functor.cpp ; run-test detail/test_signature.cpp ; run-test detail/test_type_name.cpp ; } alias mock_tests : [ run-tests ] ; rule run-failures { for name in [ glob fail_*.cpp ] { compile-fail $(name) ; } } alias mock_failures : [ run-failures ] ; # How to time bench_*.cpp compilation ?