test/build/Jamfile.v2
Raffi Enficiaud 42e9a15317 <boost/timer.hpp> removal and time-out for suites and major refactoring
As boost/timer.hpp is being deprecated, and the needed functionality
is very little, reimplemeted naively a timing class for the purpose
of measuring the test-unit time.

- specific timer class that is cross-platform and agnostic to changes made
  to the OS while measuring time (mac, posix and windows). Wall-clock and system/user
  time available
- changed framework to work fully with microseconds. Only ::alarm needs seconds
  and ceiling is used for signaling time-out
- Windows now signals also time-outs the same way as for other platforms (exception
  raised in the test and reported). However, Windows platform do not raise a signal
  that terminates the current test
- timeout is not used for failing a test-suite as well. Remaining time calculation is
  now made in microseconds. Adding an observer interface for signaling time out and
  adding the time outs in the test results
- cleaned up interfaces, clarify the code about the dimension of the different scalar values.
2019-02-27 14:55:00 +01:00

120 lines
2.8 KiB
Plaintext

# (C) Copyright boost 2004-2014.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at www.boost.org/LICENSE_1_0.txt)
#
# See http://www.boost.org/libs/test for the library home page.
import os ;
import ../../predef/check/predef
: check
: predef-check ;
project boost/test
: source-location ../src
: requirements <link>shared:<define>BOOST_TEST_DYN_LINK=1
<toolset>borland:<cxxflags>-w-8080
<target-os>cygwin:<define>_POSIX_C_SOURCE=200112L
# Disable Warning about boost::noncopyable not being exported
<link>shared,<toolset>msvc:<cxxflags>-wd4275
<toolset>msvc:<cxxflags>-wd4671
<toolset>msvc:<cxxflags>-wd4673
[ predef-check "BOOST_COMP_GNUC >= 4.3.0" : : <cxxflags>-Wno-variadic-macros ]
<toolset>clang:<cxxflags>-Wno-c99-extensions
<toolset>clang:<cxxflags>-Wno-variadic-macros
<warnings>all
# <warnings-as-errors>on
: usage-requirements
<define>BOOST_TEST_NO_AUTO_LINK=1
# Disable Warning about boost::noncopyable not being exported
<link>shared,<toolset>msvc:<cxxflags>-wd4275
;
PRG_EXEC_MON_SOURCES =
execution_monitor
debug
cpp_main
;
TEST_EXEC_MON_SOURCES =
compiler_log_formatter
debug
decorator
execution_monitor
framework
plain_report_formatter
progress_monitor
results_collector
results_reporter
test_framework_init_observer
test_main
test_tools
test_tree
unit_test_log
unit_test_main
unit_test_monitor
unit_test_parameters
junit_log_formatter
xml_log_formatter
xml_report_formatter
;
UTF_SOURCES =
compiler_log_formatter
debug
decorator
execution_monitor
framework
plain_report_formatter
progress_monitor
results_collector
results_reporter
test_framework_init_observer
test_tools
test_tree
unit_test_log
unit_test_main
unit_test_monitor
unit_test_parameters
junit_log_formatter
xml_log_formatter
xml_report_formatter
;
lib boost_prg_exec_monitor
: # sources
$(PRG_EXEC_MON_SOURCES).cpp
: # requirements
: # default build
: # usage-requirements
<link>shared:<define>BOOST_TEST_DYN_LINK=1
;
lib boost_test_exec_monitor
: # sources
$(TEST_EXEC_MON_SOURCES).cpp
: # requirements
<link>static
: # default build
: # usage-requirements
<link>shared:<define>BOOST_TEST_DYN_LINK=1
;
lib boost_unit_test_framework
: # sources
$(UTF_SOURCES).cpp
: # requirements
: # default build
: # usage-requirements
<link>shared:<define>BOOST_TEST_DYN_LINK=1
;
alias minimal ;
alias included ;
boost-install boost_prg_exec_monitor
boost_test_exec_monitor
boost_unit_test_framework ;