* topic/GH-202-boost-timer-deprecation:
Change log
Documentation updates
Adding the support for skipped test units/suites in the reporter and formatters
<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.
The BOOST_DATA_TEST_CASE creates an implicit test suite. that consumes
all the decorators that have been declared prior to the BOOST_DATA_TEST_CASE
macro. In order to properly propagate the decorators to the underlying
test-case generator (the data test case), a new "stacked" decorator collector
has been implemented. The new decorator decorator::stack_decorator
allows the user to push the currently stacked decorator to a higher level of the
hierarchy.
The singleton reference variables and a few other globals may not be actually
used in the user's code, which makes gcc emit warnings. This commit marks these
variables as potentially unused, which silences the warnings.
Apparently, some versions of legacy MinGW headers don't provide
the standard vsnprintf function, as Appveyor CI fails for this target.
Thus we use the non-standard MSVC-specific _vsnprintf instead.
To ease the creation of contexts, variadic let us declare several
values in one call (no extra brace) while ticky context let us
add new information while they arrive.
The example shows a random trial making a test fail. We force the failure
for the unit tests, which does not remove the documentation value of the
example.
It is now possible to compare a type that is tolerance based together
with a type that is not necessarily tolerance based but still
arithmetic.
Doc update and tests.
- Functions being optimized: making functions having side-effects to prevent
optimizations to remove the calls.
- UB (divide by zero) is compiler implementation specific and does not raise
an exception on CLANG, rewrite the test to serve the purpose of the
boost.test macro.
* topic/PR-172-unused-variable-warning:
Change log
Using boost/core facility to silence unused variables
Check for non-used variables when NDEBUG is defined