2
0
mirror of https://github.com/boostorg/test.git synced 2026-01-27 19:32:11 +00:00
Commit Graph

1021 Commits

Author SHA1 Message Date
Edward Diener
a4e729b227 Syntactic change silences latest gcc warnings about confusing 'if' statements. 2016-10-18 23:43:18 +02:00
Raffi Enficiaud
a733f5b951 Loggers: now checking for --logger params correctness
- checking for command line params for --logger
- handling errors properly
- printing informative messages
2016-09-14 18:05:35 +02:00
Raffi Enficiaud
f51aeac5b8 Logger: cleaned up and improved the API
- now experiencing the same behaviour as pre 1.62
- set_stream and set_threshold_level for the loggers are now mutating all loggers, not only the active ones
- renamed function
- when adding a custom logger, it is added to the set of loggers with CUSTOM
- updated the documentation
2016-09-14 14:57:46 +02:00
Raffi Enficiaud
97e039ec9d being able to add a custom formatter instead of having it in an 'invalid' state 2016-09-13 17:55:14 +02:00
Raffi Enficiaud
38bdd315c1 Additional cleanup of unused fields 2016-09-06 20:28:01 +02:00
Raffi Enficiaud
5438f8bf2a Moving the logger setup into a dedicated function 2016-09-06 20:28:01 +02:00
Raffi Enficiaud
580501ef6f gcc 4.6: fixing issues related to the new cla and C++11 not fully supported
- adding C++11 required features for the new cla
- using a unique macro definition everywhere needed
2016-09-06 11:24:59 +02:00
Raffi Enficiaud
1427dc3734 gcc 4.6: fixing issues related to operator<< not properly seen by the compiler 2016-09-06 11:24:59 +02:00
Raffi Enficiaud
5c3a4032f7 Merge branch 'topic/12241-datasets-on-tuples' into next-internal
* topic/12241-datasets-on-tuples:
  Change log update
  Enabling datasets with tuples
2016-09-06 01:19:50 +02:00
Raffi Enficiaud
d0fda1a48a Loggers documentation update
- major reorganization of the output section
- making more clear what a log and what a report is
- checkpoints doc update
- links to API, improved doxygen documentation and reference
- renamed files and sections
- JUNIT additional doc
- removed useless parts
2016-09-06 01:16:26 +02:00
Raffi Enficiaud
b87e9eb921 Enabling datasets with tuples
- adding unit test from the ticket
2016-09-06 00:10:18 +02:00
Raffi Enficiaud
a0fce77912 Merge branch 'topic/progress-log-to-stdout' into next-internal
* topic/progress-log-to-stdout:
  Progress display to stdout
2016-09-04 16:31:40 +02:00
Raffi Enficiaud
495d0aa8d7 Progress display to stdout 2016-09-04 16:30:39 +02:00
Raffi Enficiaud
b43983cf66 Merge branch 'topic/12378-clang-compilation-error' into next-internal
* topic/12378-clang-compilation-error:
  trac #12378: change log update
  Fix compilation with no support of std::initializer_list
2016-09-04 16:24:27 +02:00
Daniel Laügt
76f8b40496 Fix compilation with no support of std::initializer_list 2016-09-04 16:21:21 +02:00
Raffi Enficiaud
f1cb46d4fb trac #12257: fix incorrect line numbers/files generated by test_case_gen 2016-09-04 16:17:43 +02:00
Raffi Enficiaud
dd1558b5be Fixing the header only problem 2016-08-24 19:50:46 +02:00
Raffi Enficiaud
8567c2ae8a Merge branch 'topic/8707-8834-junit-several-loggers' into develop
* topic/8707-8834-junit-several-loggers:
  Change log update
  Documentation
  JUnit default output stream
  Logger tests: overriding the output_stream_logger matching algorithm and changing the format of the messages sent by the framework
  Combined logger: CLA handling and stream/log level per formatter
  Junit logger: integration into the set of loggers
  JUnit logger: implementation
  Multiple logger: entry in progress now being per logger as well
  Multiple logger: now enabling a logger by its format
  Multiple logger: breaking changes in the API in order to be able to add a logger per format on the fly
  Loggers: now handling abort signal as well
  Multiple loggers: having several loggers at the same time
  Algorithm: replace all strings with/out wildcards
  output_test_stream: being able to override the match_pattern method by making it virtual (+ other functions)
  output_test_stream: improved messages on error
  Framework: fixing the time associated to each test unit
  issues with VS placeholders
2016-08-18 01:47:55 +02:00
Raffi Enficiaud
c642b50c4b Merge branch 'topic/trac-11859-run-parameters' into develop
* topic/trac-11859-run-parameters:
  Changelog and doc update
  runtime parameter: now using ':' as a separator for each --run_param
2016-08-18 01:46:27 +02:00
Raffi Enficiaud
2ea9ffd7f1 dataset test case have their own unique name
Fixes 11845
Each data test case is not creating a test suite with the name provided by the BOOST_DATA_TEST_CASE directive. Inside that test suite, all samples are added with names _0, _1 ...

- Fix counter after copy/move
2016-08-18 01:44:40 +02:00
Raffi Enficiaud
b9d5c892cd Documentation 2016-08-18 01:30:07 +02:00
Raffi Enficiaud
48bcabbd37 JUnit default output stream
- string replacement function refactoring
- junit now determining the output stream based on available file
- junit does not replace existing file
2016-08-18 01:30:07 +02:00
Raffi Enficiaud
e3bb5bd056 Logger tests: overriding the output_stream_logger matching algorithm and changing the format of the messages sent by the framework
Rationale: being agnostic to the variable of the unit tests (time, file location)

- the output_test_stream now is being able to replace the content of the stream before it reached the matching algorithm
- several stream processing: file names (cross platform), execution time ... for removing the platform dependant log format
- additional cleanup and fixes for the JUnit implementation (all assertions are now properly logged and flushed at write time in the appropriate section of the file)
- now the framework emits warnings/errors that are signaled by "boost.test framework" instead of a file that is unknown from the user (+1 squashed commit)
2016-08-18 01:30:07 +02:00
Raffi Enficiaud
a7c3116882 Combined logger: CLA handling and stream/log level per formatter
- new CLA argument for being able to specify a logger with repetition, as well as its log level and stream
- the specification of the logger are: logger_name[:log_level[:log_sink]]
- empty token are kept: 'logger_name::' is a valid spec
- now being able to specify a stream per format: modification of the stream helper
- the output stream of a particular format now accepts the name of the stream instead of the name of the associated param on the command line
2016-08-18 01:30:07 +02:00
Raffi Enficiaud
f36bf2a1c0 Junit logger: integration into the set of loggers 2016-08-18 00:17:31 +02:00
Raffi Enficiaud
875dda8de7 JUnit logger: implementation
- Make JUnit logger discard the log levels to log all events
- Currently JUnit discards the file directory where the assertion is being logged
- Uses tree visitation at the end of the test suite in order to generate the log file
2016-08-18 00:17:31 +02:00
Raffi Enficiaud
2b09113c32 Multiple logger: entry in progress now being per logger as well
This is necessary since each logger may have a different log level
2016-08-18 00:17:27 +02:00
Raffi Enficiaud
579384afbe Multiple logger: now enabling a logger by its format 2016-08-18 00:16:06 +02:00
Raffi Enficiaud
e7f3e09a1a Multiple logger: breaking changes in the API in order to be able to add a logger per format on the fly
- in particular, changes the order of the formatter registration
- follow up unit tests changes wrt. breaking changes in the API
2016-08-18 00:14:23 +02:00
Raffi Enficiaud
9ffdf33dec Loggers: now handling abort signal as well 2016-08-17 23:38:33 +02:00
Raffi Enficiaud
e57629c02a Multiple loggers: having several loggers at the same time
- each formatter now indicates its default stream output (stderr/stdout/file)
- stream can now be set per logger formatter
- each logger is now capable of having its own log level
2016-08-17 23:38:33 +02:00
Raffi Enficiaud
686228e50d Algorithm: replace all strings with/out wildcards 2016-08-17 23:38:33 +02:00
Raffi Enficiaud
5eff15b039 output_test_stream: being able to override the match_pattern method by making it virtual (+ other functions) 2016-08-17 23:38:33 +02:00
Raffi Enficiaud
cb7b157a0b output_test_stream: improved messages on error
- improved diagnostic:
    * now prints a longer prefix/suffix and the position of the mismatch
    * continues the comparison in case of error rather than stopping and flushing the stream
- best substring matching in case of error for continuing the comparison of the strings/streams at the next location
- added algorithm for string replacement
2016-08-17 23:38:33 +02:00
Raffi Enficiaud
ea59e06c8c Framework: fixing the time associated to each test unit
- fixing doc mentioning the microseconds instead of milliseconds
- adding appropriate field in the result collector for proper tree visitation
2016-08-17 23:38:33 +02:00
Raffi Enficiaud
a5f805fe12 runtime parameter: now using ':' as a separator for each --run_param
Fix bug trac 11859
2016-08-17 00:38:10 +02:00
Raffi Enficiaud
b5cb64b3f4 issues with VS placeholders 2016-08-11 23:23:53 +02:00
Gennadiy Rozental
2a05a5e785 Generate unique test cases name for data test cases series 2016-07-12 21:02:46 +02:00
Raffi Enficiaud
e8521499fd Merge branch 'topic/trac-12103-gcc-bug-for-getchar' into next-internal
* topic/trac-12103-gcc-bug-for-getchar:
  Changelog
  Fix for uClibc and gcc <= 4.8.2

# Conflicts:
#	doc/closing_chapters/change_log.qbk
2016-05-27 10:34:54 +02:00
Raffi Enficiaud
84ea93dbc6 Merge branch 'topic/trac-12024-nonexisting-__cxa_demangle-android' into next-internal
* topic/trac-12024-nonexisting-__cxa_demangle-android:
  Changelog
  Use boost/core/demangle instead of a direct GNU API use

# Conflicts:
#	doc/closing_chapters/change_log.qbk
#	include/boost/test/impl/execution_monitor.ipp
2016-05-27 10:33:27 +02:00
Raffi Enficiaud
31bebaf066 Merge branch 'topic/trac-11128-bb10-qnx-failures' into next-internal
* topic/trac-11128-bb10-qnx-failures:
  Changelog
  Add missing using for QNX

# Conflicts:
#	doc/closing_chapters/change_log.qbk
2016-05-27 10:29:51 +02:00
Raffi Enficiaud
7221208094 Merge branch 'topic/PR99-fix-crashes-with-RTTI-off-on-MSVC' into next-internal
* topic/PR99-fix-crashes-with-RTTI-off-on-MSVC:
  Changelog
  Fix crashes with RTTI-off on MSVC

# Conflicts:
#	doc/closing_chapters/change_log.qbk
2016-05-27 10:28:57 +02:00
Raffi Enficiaud
b7492a43cd Added documentation and change log 2016-05-27 09:55:28 +02:00
Jörg Böhme
933a71e37b Add missing using for QNX 2016-05-24 00:35:38 +02:00
wwinder
de5b4681dc Added 'BOOST_TEST_DISABLE_ALT_STACK' flag to use with ESXi build. 2016-05-24 00:13:03 +02:00
Marcel Raad
3348571908 Fix crashes with RTTI-off on MSVC
When RTTI is off on MSVC, BOOST_NO_TYPEID is not defined,
but only static typeid works. Dynamic typeid crashes at runtime.
2016-05-24 00:08:30 +02:00
Raffi Enficiaud
539b27a6aa Use boost/core/demangle instead of a direct GNU API use 2016-05-24 00:05:04 +02:00
Jörg Krause
1067fbe669 Fix for uClibc and gcc <= 4.8.2
getchar() is defined as a macro in uClibc. This hits gcc bug 58952 [1] for all
gcc version <= 4.8.2 and building boost/test fails:

./boost/test/impl/unit_test_main.ipp: In function 'int boost::unit_test::unit_test_main(boost::unit_test::init_unit_test_func, int, char**)':
./boost/test/impl/unit_test_main.ipp:194:18: error: expected unqualified-id before '(' token

To allow building boost/test with uClibc based toolchains with gcc <= 4.8.2 use
parenthesis for std::getchar.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58952
2016-05-23 23:38:14 +02:00
Raffi Enficiaud
01dcf29337 Comment on the fix for maintenance 2016-03-27 21:01:22 +02:00
jzmaddock
c94ef6982e Fix for clang on windows
When I try to build with clang on windows (4.2.1 Compatible Clang 3.9.0 (trunk), on top of VC14) I get an error complaining that accessing "this" within an __except block is unimplemented.  This patch just stores the value in a local variable to make it available with the __finally clause.

Allows Boost.Test to be built with clang on windows, in VC compatibility mode.
2016-03-27 19:27:26 +01:00