| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709 |
- # Boost regression-testing Jamfile
- # (C) Copyright David Abrahams 2001. Permission to copy, use, modify, sell and
- # distribute this software is granted provided this copyright notice appears in
- # all copies. This software is provided "as is" without express or implied
- # warranty, and with no claim as to its suitability for any purpose.
- subproject status ;
- # ----------- Jam rules for testing; test invocations at bottom ----------------#
- #######################################################################################
- # Tests generate a number of files reflecting their status in the subvariant-directory
- #
- # <test-name>.test - a marker so that Jam knows when it needs to be
- # rebuilt. It will contain the paths from this
- # directory to the source files used for the test
- #
- # <test-name>.success - present only if the test last succeeded.
- # Contains the string "succeeded"
- #
- # <test-name>.failure - present only if the test last failed. Contains the string
- # "failed".
- #
- # <test-name>.output - contains the output of the test if it was a run test.
- #######################################################################################
- # Declares a test target. If name is not supplied, it is taken from the name of
- # the first source file, sans extension and directory path.
- #
- # type should be a target type (e.g. OBJ, DLL, LIB, EXE)
- #
- # RETURNS the name(s) of the generated test target(s).
- rule boost-test ( sources + : target-type : requirements * : test-name ? )
- {
- local result ;
- {
- # manufacture a test name if none supplied explicitly
- test-name ?= $(sources[1]:D=:S=) ;
- # Make sure that targets don't become part of "all"
- local gSUPPRESS_FAKE_TARGETS = true ;
-
- local dependencies = [ select-gristed $(sources) ] ;
- local source-files = [ select-ungristed $(sources) ] ;
- result = [
- declare-local-target $(test-name)
- : $(source-files:R=$(BOOST_ROOT)) $(dependencies) # sources
- : $(requirements) <sysinclude>$(BOOST_ROOT) # requirements
- : # default build
- : $(target-type)
- ] ;
- }
-
- Clean clean : $(result) ;
-
- # make NOTFILE targets of the same base name as the sources which can
- # be used to build a single test.
- type-DEPENDS $(sources:B:S=) : $(result) ;
-
- # The NOTFILE target called "test" builds all tests
- type-DEPENDS test : $(result) ;
-
- return $(result) ;
- }
- #######
- BOOST_TEST_SUFFIX ?= .test ;
- # a utility rule which causes test-file to be built successfully only if
- # dependency fails to build. Used for expected-failure tests.
- rule failed-test-file ( test-file : dependency + )
- {
- catenate-output-on-failure $(test-file) : $(dependency[1]) ;
- DEPENDS $(test-file) : $(dependency) ;
- NOCARE $(dependency) ;
- TEMPORARY $(dependency) ;
- }
- # a utility rule which causes test-file to be built successfully only if
- # dependency builds. Used for expected-success tests.
- rule succeeded-test-file ( test-file : dependency + )
- {
- catenate-output-on-failure $(test-file) : $(dependency[1]) ;
- DEPENDS $(test-file) : $(dependency) ;
- NOCARE $(dependency) ;
- TEMPORARY $(dependency) ;
- }
- rule catenate-output-on-failure ( test-file : dependency )
- {
- if $(gTEST_OUTPUT_FILE($(dependency)))
- {
- output-file on $(test-file) = $(gTEST_OUTPUT_FILE($(dependency))) ;
- }
- }
- if $(NT)
- {
- CATENATE1 = "if exist \"" ;
- CATENATE2 = "\" ( type \"" ;
- CATENATE3 = "\"
- ECHO ****************************************************** )" ;
-
- actions failed-test-file bind output-file source-files
- {
- echo "$(source-files)" > $(<:S=.test)
- if EXIST "$(>)". (
- if EXIST "$(<:S=.success)". del /f/q "$(<:S=.success)".
- echo "failed" > "$(<:S=.failure)"
-
- echo *
- echo ***************** failed above test: $(<:B:S=) ********************
- $(CATENATE1)$(output-file)$(CATENATE2)$(output-file)$(CATENATE3)
- echo *
- ) ELSE (
- if EXIST "$(<:S=.failure)". del /f/q "$(<:S=.failure)".
- echo succeeded > "$(<:S=.success)"
- )
- }
- actions succeeded-test-file bind output-file source-files
- {
- echo "$(source-files)" > $(<:S=.test)
- if EXIST "$(>)". (
- if EXIST "$(<:S=.failure)". del /f/q "$(<:S=.failure)".
- echo succeeded > "$(<:S=.success)"
- ) ELSE (
- if EXIST "$(<:S=.success)". del /f/q "$(<:S=.success)".
- echo failed > "$(<:S=.failure)"
-
- echo *
- echo ***************** failed above test: $(<:B:S=) ********************
- $(CATENATE1)$(output-file)$(CATENATE2)$(output-file)$(CATENATE3)
- echo *
- )
- }
- }
- else
- {
- CATENATE = "cat " ;
- CATENATE1 = "if [ -f \"" ;
- CATENATE2 = "\" ] ; then
- cat \"" ;
- CATENATE3 = "\" ; echo ******************************************************
- fi" ;
-
- actions failed-test-file bind output-file source-files
- {
- echo "$(source-files)" > $(<:S=.test)
- if [ -f "$(>)" ] ; then
- if [ -f "$(<:S=.success)" ] ; then
- $(RM) "$(<:S=.success)"
- fi
- echo "failed" > $(<:S=.failure)
- echo "*"
- echo "***************** failed above test: $(<:B:S=) ********************"
- $(CATENATE1)$(output-file)$(CATENATE2)$(output-file)$(CATENATE3)
- echo "*"
- else
- if [ -f "$(<:S=.failure)" ] ; then
- $(RM) "$(<:S=.failure)"
- fi
- echo "succeeded" > "$(<:S=.success)"
- fi
- }
- actions succeeded-test-file bind output-file source-files
- {
- echo "$(source-files)" > "$(<:S=.test)"
- if [ -f "$(>)" ] ; then
- if [ -f "$(<:S=.failure)" ] ; then
- $(RM) "$(<:S=.failure)"
- fi
- echo "succeeded" > "$(<:S=.success)"
- else
- if [ -f "$(<:S=.success)" ] ; then
- $(RM) "$(<:S=.success)"
- fi
- echo "failed" > "$(<:S=.failure)"
- echo "*"
- echo "***************** failed above test: $(<:B:S=) ********************"
- $(CATENATE1)$(output-file)$(CATENATE2)$(output-file)$(CATENATE3)
- echo "*"
- fi
- }
- }
- rule declare-build-succeed-test ( test-type : dependency-type )
- {
- gGENERATOR_FUNCTION($(test-type)) = build-test succeeded-test-file ;
- gDEPENDENCY_TYPE($(test-type)) = $(dependency-type) ;
- SUF$(test-type) = $(BOOST_TEST_SUFFIX) ;
- }
- # A utility rule which declares test-type to be a target type which
- # depends on the /failed/ construction of a target of type
- # dependency-type.
- rule declare-build-fail-test ( test-type : dependency-type )
- {
- gGENERATOR_FUNCTION($(test-type)) = build-test failed-test-file ;
- gDEPENDENCY_TYPE($(test-type)) = $(dependency-type) ;
- SUF$(test-type) = $(BOOST_TEST_SUFFIX) ;
- }
- # A temporary measure in case people don't rebuild their Jam
- # executables. Define the builtin RMOLD if it's missing.
- if ! ( RMOLD in [ RULENAMES ] )
- {
- rule RMOLD { }
- }
- # When the appropriate generator function is bound to the
- # test-file-generator argument, this is a target generator function
- # for target types declared with declare-build-succeed-test and
- # declare-build-fail-test, above.
- rule build-test ( test-file-generator test-file + : sources + : requirements * )
- {
- # Get the target type of the current target out of the build properties
- local target-type = [ get-values <target-type> : $(gBUILD_PROPERTIES) ] ;
- # Get the type of target to attempt to build; the outcome of this
- # attempt determines the result of the test.
- local dependency-type = $(gDEPENDENCY_TYPE($(target-type))) ;
-
- # Get the actual name of the target to attempt to build
- local dependency = $(test-file[1]:S=$(SUF$(dependency-type))) ;
- # record the source file names so we can put them in the .test
- # file.
- source-files on $(test-file) = $(sources) ;
-
- # Make sure that the dependency is erased, so as not to give a
- # false indication of success.
- RMOLD $(dependency) ;
-
- # Call dependency-type's generator function to attempt the build
- local ignored = [
- $(gGENERATOR_FUNCTION($(dependency-type))) $(dependency) : $(sources) : $(requirements) ] ;
- # Generator functions don't handle this job for us; perhaps they should.
- set-target-variables $(dependency) ;
-
- # The .test file goes with the other subvariant targets
- MakeLocate $(test-file:S=.test) : $(LOCATE_TARGET) ;
- MakeLocate $(test-file:S=.success) : $(LOCATE_TARGET) ;
- MakeLocate $(test-file:S=.failure) : $(LOCATE_TARGET) ;
- # Generate the test file
- $(test-file-generator) $(test-file) : $(dependency) ;
- }
- ### Rules for testing whether a file compiles ###
- # Establish the rule which generates targets of type "OBJ". Should really go
- # into basic build system, but wasn't needed 'till now.
- gGENERATOR_FUNCTION(OBJ) = Object ;
- declare-build-fail-test COMPILE_FAIL : OBJ ;
- declare-build-succeed-test COMPILE : OBJ ;
- # Test that the given source-file(s) compile
- rule compile ( sources + : requirements * : test-name ? )
- {
- return [ boost-test $(sources) : COMPILE : $(requirements) : $(test-name) ] ;
- }
- # Test that the given source-file(s) fail to compile
- rule compile-fail ( sources + : requirements * : test-name ? )
- {
- return [ boost-test $(sources) : COMPILE_FAIL : $(requirements) : $(test-name) ] ;
- }
- ### Rules for testing whether a program runs ###
- gGENERATOR_FUNCTION(RUN_TEST) = run-test ;
- SUFRUN_TEST = .run ;
- rule run-test ( target : sources + : requirements * )
- {
- local executable = $(target:S=$(SUFEXE)) ;
-
- local parent = $(target:S=.test) ;
- # Move important data from the test target to the executable
- gRUN_LD_LIBRARY_PATH($(executable)) = $(gRUN_LD_LIBRARY_PATH($(parent))) ;
- gRUN_PATH($(executable)) = $(gRUN_PATH($(parent))) ;
-
- executable-file $(executable) : $(sources) : $(requirements) ;
- set-target-variables $(executable) ;
-
- # The .test file goes with the other subvariant targets
- # normalization is a hack to get the slashes going the right way on Windoze
- local LOCATE_TARGET = [ FDirName [ split-path $(LOCATE_TARGET) ] ] ;
- MakeLocate $(target) : $(LOCATE_TARGET) ;
-
- DEPENDS $(target) : $(executable) $(gRUN_TEST_INPUT_FILES) ;
- INPUT_FILES on $(target) = $(gRUN_TEST_INPUT_FILES) ;
- ARGS on $(target) = $(gRUN_TEST_ARGS) ;
- capture-run-output $(target) : $(executable) ;
-
- if $(RUN_ALL_TESTS)
- {
- ALWAYS $(target) ;
- }
- }
- # The rule is just used for argument checking
- rule capture-run-output ( target : executable + )
- {
- gTEST_OUTPUT_FILE($(target)) = $(target:S=.output) ;
- INCLUDES $(target) : $(target:S=.output) ;
- MakeLocate $(test-file:S=.failure) : $(LOCATE_TARGET) ;
- MakeLocate $(test-file:S=.output) : $(LOCATE_TARGET) ;
- capture-run-output1 $(target) : $(executable) ;
- }
- rule capture-run-output1 ( target : executable )
- {
- output-file on $(target) = $(target:S=.output) ;
- local targets = $(target) $(target:S=.output) ;
-
- RUN_PATH on $(targets) = [ join $(gRUN_PATH($(executable))) : $(SPLITPATH) ] ;
- if $(UNIX)
- {
- RUN_LD_LIBRARY_PATH on $(targets) = [ join $(gRUN_LD_LIBRARY_PATH($(executable))) : $(SPLITPATH) ] ;
- }
- }
- if $(UNIX)
- {
- actions capture-run-output1 bind INPUT_FILES output-file
- {
- $(SHELL_SET)PATH=$(RUN_PATH):$PATH
- $(SHELL_EXPORT)PATH
- $(SHELL_SET)LD_LIBRARY_PATH=$(RUN_LD_LIBRARY_PATH):$LD_LIBRARY_PATH
- $(SHELL_EXPORT)LD_LIBRARY_PATH
- $(>) $(ARGS) $(INPUT_FILES) > $(output-file) 2>&1 && $(CP) $(output-file) $(<[1])
- }
- }
- else
- {
- actions capture-run-output1 bind INPUT_FILES output-file
- {
- $(SHELL_SET)PATH=$(RUN_PATH);%PATH%
- $(SHELL_EXPORT)PATH
- $(>) $(ARGS) $(INPUT_FILES) > $(output-file) 2>&1 && $(CP) $(output-file) $(<[1])
- }
- }
- declare-build-fail-test RUN_FAIL : RUN_TEST ;
- declare-build-succeed-test RUN : RUN_TEST ;
- rule run ( sources + : args * : input-files * : requirements * : name ? )
- {
- local gRUN_TEST_ARGS = $(args) ;
- local gRUN_TEST_INPUT_FILES = $(input-files) ;
- SEARCH on $(input-files) = $(LOCATE_SOURCE) ;
- return [ boost-test $(sources) : RUN : $(requirements) : $(name) ] ;
- }
- rule run-fail ( sources + : args * : input-files * : requirements * : name ? )
- {
- local gRUN_TEST_ARGS = $(2) ;
- local gRUN_TEST_INPUT_FILES = $(3) ;
- SEARCH on $(3) = $(LOCATE_SOURCE) ;
- return [ boost-test $(<) : RUN_FAIL : $(4) : $(name) ] ;
- }
- ### Rules for testing whether a program links
- declare-build-fail-test LINK_FAIL : EXE ;
- rule link-fail ( sources + : requirements * : name ? )
- {
- return [ boost-test $(<) : LINK_FAIL : $(2) : $(name) ] ;
- }
- ### Rules for grouping tests into suites:
- rule test-suite # pseudotarget-name : test-targets...
- {
- NOTFILE $(<) ;
- type-DEPENDS $(<) : $(>) ;
- }
- # ------------- Actual test invocations follow -----------------#
-
- # Note that the Compiler Status Report HTML generator scans
- # these rule invocations to find test type. That program is
- # pretty stupid and needs help, including test names (if supplied)
- # which are unambiguous, not the same as a .cpp file name, and
- # preceded and followed by a space.
- test-suite "bind"
- : [ run libs/bind/bind_test.cpp ]
- [ run libs/bind/bind_test.cpp ]
- [ run libs/bind/mem_fn_test.cpp ]
- [ run libs/bind/mem_fn_void_test.cpp ]
- ;
- test-suite config
- : [ run libs/config/test/config_test.cpp
- : #args
- : #input-files
- : #requirements
- <threading>multi
- ]
- [ run libs/config/test/config_info.cpp ]
- [ run libs/config/test/limits_test.cpp ]
- ;
-
- run libs/any/any_test.cpp ;
- run libs/array/array1.cpp ;
- test-suite concept_check
- : [ compile libs/concept_check/concept_check_test.cpp ]
- [ compile libs/concept_check/class_concept_check_test.cpp ]
- [ link-fail libs/concept_check/concept_check_fail_expected.cpp ]
- [ link-fail libs/concept_check/class_concept_fail_expected.cpp ]
- ;
- test-suite conversion
- : [ run libs/conversion/cast_test.cpp ]
- [ run libs/conversion/lexical_cast_test.cpp ]
- ;
-
- run libs/crc/crc_test.cpp ;
- run libs/function/test/function_test.cpp ;
- run libs/functional/function_test.cpp ;
- run libs/graph/test/graph.cpp ;
- test-suite integer
- : [ run libs/integer/cstdint_test.cpp ]
- [ run libs/integer/integer_test.cpp ]
- [ run libs/integer/integer_traits_test.cpp ]
- ;
- run
- libs/io/test/ios_state_test.cpp # sources
- : # args
- : # input-files
- : <runtime-link>static # requirements (static runtime required by Metrowerks)
- ;
- test-suite lambda
- : [ run libs/lambda/test/bind_tests_simple.cpp ]
- [ run libs/lambda/test/bind_tests_advanced.cpp ]
- [ run libs/lambda/test/bind_tests_simple_f_refs.cpp ]
- [ run libs/lambda/test/bll_and_function.cpp ]
- [ run libs/lambda/test/cast_test.cpp ]
- [ run libs/lambda/test/constructor_tests.cpp ]
- [ run libs/lambda/test/control_structures.cpp ]
- [ run libs/lambda/test/exception_test.cpp ]
- [ run libs/lambda/test/extending_rt_traits.cpp ]
- [ run libs/lambda/test/is_instance_of_test.cpp ]
- [ run libs/lambda/test/member_pointer_test.cpp ]
- [ run libs/lambda/test/operator_tests_simple.cpp ]
- [ run libs/lambda/test/phoenix_control_structures.cpp ]
- [ run libs/lambda/test/switch_construct.cpp ]
- ;
- test-suite math
- : [ run libs/math/test/common_factor_test.cpp ]
- [ run libs/math/octonion/octonion_test.cpp ]
- [ run libs/math/quaternion/quaternion_test.cpp ]
- [ run libs/math/special_functions/special_functions_test.cpp ]
- ;
- run libs/pool/test/test_pool_alloc.cpp ;
- test-suite rational
- : [ run libs/rational/rational_example.cpp ]
- [ run libs/rational/rational_test.cpp ]
- ;
- test-suite random
- : [ run libs/random/random_test.cpp ]
- [ run libs/random/random_demo.cpp ]
- ;
- run libs/utility/ref_test.cpp ;
- {
- local test-dir = $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)test$(SLASH)regress$(SLASH) ;
-
- local test-files = $(test-dir)tests.txt
- # dwa -- not sure if this is generally applicable
- # $(test-dir)test1252.txt
- ;
- test-suite regex
- : [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- $(test-files)
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>BOOST_REGEX_STATIC_LINK=1
- :
- regress ]
- [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- $(test-files)
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>TEST_UNICODE=1
- <define>BOOST_REGEX_STATIC_LINK=1
- :
- wregress ]
- [ run libs/regex/test/c_compiler_checks/posix_api_check.c
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>BOOST_REGEX_STATIC_LINK=1
- :
- posix_api_check_c ]
- [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.c
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>BOOST_REGEX_STATIC_LINK=1
- :
- wide_posix_api_check_c ]
- [ run libs/regex/test/c_compiler_checks/posix_api_check.cpp
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>BOOST_REGEX_STATIC_LINK=1
- ]
- [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.cpp
- <lib>../libs/regex/build/boost_regex$(SUFLIB)
- :
- :
- :
- <define>BOOST_REGEX_NO_LIB=1
- <define>BOOST_REGEX_STATIC_LINK=1
- ]
- ;
- }
- run libs/smart_ptr/smart_ptr_test.cpp ;
- test-suite static_assert
- : [ compile libs/static_assert/static_assert_test.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_1.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_2.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_3.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_4.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_5.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_6.cpp ]
- [ compile-fail libs/static_assert/static_assert_test_fail_7.cpp ]
- [ link-fail libs/static_assert/static_assert_test_fail_8.cpp ]
- ;
-
- run libs/test/example/test_tools_example.cpp ;
- run-fail libs/test/test/test_tools_fail2.cpp ;
- {
- local threadmon ;
- if $(NT)
- {
- threadmon = <dll>../libs/thread/build/boost_threadmon ;
- }
-
- test-suite threads
- : [
- run libs/thread/test/test_thread.cpp
- <lib>../libs/thread/build/boost_thread
- $(threadmon)
- : #args
- : #input-files
- : #requirements
- <threading>multi
- ]
- ;
- }
- compile libs/timer/timer_test.cpp ;
- test-suite tokenizer
- : [ run libs/tokenizer/examples.cpp ]
- [ run libs/tokenizer/simple_example_1.cpp ]
- [ run libs/tokenizer/simple_example_2.cpp ]
- [ run libs/tokenizer/simple_example_3.cpp ]
- [ run libs/tokenizer/simple_example_4.cpp ]
- [ run libs/tokenizer/simple_example_5.cpp ]
- ;
- test-suite type_traits
- : [ run libs/type_traits/tests/alignment_test.cpp ]
- [ run libs/type_traits/tests/arithmetic_traits_test.cpp ]
- [ run libs/type_traits/tests/composite_traits_test.cpp ]
- [ run libs/type_traits/tests/cv_traits_test.cpp ]
- [ run libs/type_traits/tests/is_function_test.cpp ]
- [ run libs/type_traits/tests/is_convertible_test.cpp ]
- [ run libs/type_traits/tests/is_same_test.cpp ]
- [ run libs/type_traits/tests/object_type_traits_test.cpp ]
- [ run libs/type_traits/tests/transform_traits_test.cpp ]
- ;
-
- run libs/utility/call_traits_test.cpp : -u ;
- compile-fail libs/utility/checked_delete_test.cpp ;
- run libs/utility/compressed_pair_test.cpp : -u ;
- test-suite iterator_adaptors
- : [ run libs/utility/counting_iterator_test.cpp : # args
- : # input files
- : # requirements
-
- # borland warns incorrectly in this case, so often that
- # successful compilation is prevented.
- <borland><*><cxxflags>"-w-8091 -w-8092"
- ]
-
- [ run libs/utility/iterator_adaptor_test.cpp ]
- [ compile-fail libs/utility/iter_adaptor_fail_expected1.cpp ]
- [ compile-fail libs/utility/iter_adaptor_fail_expected2.cpp ]
- [ run libs/utility/transform_iterator_test.cpp ]
- [ run libs/utility/indirect_iterator_test.cpp ]
- [ run libs/utility/iter_traits_gen_test.cpp ]
-
- [ run libs/utility/iterator_adaptor_examples.cpp ]
- [ run libs/utility/counting_iterator_example.cpp ]
- [ run libs/utility/filter_iterator_example.cpp ]
- [ run libs/utility/fun_out_iter_example.cpp ]
- [ run libs/utility/indirect_iterator_example.cpp ]
- [ run libs/utility/projection_iterator_example.cpp ]
- [ run libs/utility/reverse_iterator_example.cpp ]
- [ run libs/utility/transform_iterator_example.cpp ]
- ;
- run libs/utility/iterator_traits_test.cpp ;
- run libs/utility/iterators_test.cpp ;
- compile-fail libs/utility/noncopyable_test.cpp ;
- run libs/utility/numeric_traits_test.cpp ;
- run libs/utility/operators_test.cpp ;
- run libs/utility/tie_example.cpp ;
- run libs/utility/binary_search_test.cpp ;
- test-suite multi_array
- : [ run libs/multi_array/test/constructors.cpp ]
- [ run libs/multi_array/test/access.cpp ]
- [ run libs/multi_array/test/compare.cpp ]
- [ run libs/multi_array/test/iterators.cpp ]
- [ run libs/multi_array/test/slice.cpp ]
- [ run libs/multi_array/test/assign.cpp ]
- [ run libs/multi_array/test/index_bases.cpp ]
- [ run libs/multi_array/test/storage_order.cpp ]
- [ run libs/multi_array/test/reshape.cpp ]
- [ run libs/multi_array/test/range1.cpp ]
- [ run libs/multi_array/test/idxgen1.cpp ]
- [ run libs/multi_array/test/stl_interaction.cpp ]
- [ compile libs/multi_array/test/concept_checks.cpp ]
- [ compile-fail libs/multi_array/test/fail_cbracket.cpp ]
- [ compile-fail libs/multi_array/test/fail_cdata.cpp ]
- [ compile-fail libs/multi_array/test/fail_citerator.cpp ]
- [ compile-fail libs/multi_array/test/fail_cparen.cpp ]
- [ compile-fail libs/multi_array/test/fail_criterator.cpp ]
- [ compile-fail libs/multi_array/test/fail_csubarray.cpp ]
- [ compile-fail libs/multi_array/test/fail_csubarray2.cpp ]
- [ compile-fail libs/multi_array/test/fail_csubarray3.cpp ]
- [ compile-fail libs/multi_array/test/fail_cview.cpp ]
- [ compile-fail libs/multi_array/test/fail_cview2.cpp ]
- [ compile-fail libs/multi_array/test/fail_cview3.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cbracket.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cdata.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_citerator.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cparen.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_criterator.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_csubarray.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_csubarray2.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_csubarray3.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cview.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cview2.cpp ]
- [ compile-fail libs/multi_array/test/fail_ref_cview3.cpp ]
- ;
|