Commit Graph

3800 Commits

Author SHA1 Message Date
Colton Wolkins (Ogre)
a63ce953a0 Add TAP reporter
This is a hackish attempt to add a TAP reporter (see
philsquared/Catch#309 ) by following the TAP 12 specification
<http://testanything.org/tap-specification.html>. I'm unsure how well I
did in following the spec or with following good C++ guidelines.
Comments are appreciated.

Signed-off-by: Colton Wolkins (Ogre) <frostyfrog2@gmail.com>
2017-02-22 11:35:20 +01:00
Justin Wilson
b753f05d74 Add reporter for Automake (#826)
This allows for integration with Automake's default log compiler.

See #826 for more details.
2017-02-22 11:17:25 +01:00
Martin Hořeňovský
9bab7c8229 Changed console reporter test duration reporting format
Was
"<section-name> completed in XXX s."
Now is
"XXX s: <section-name>"

Closes #322

(cherry picked from commit 0805539)
2017-02-22 08:35:53 +00:00
Phil Nash
d8c4512b25 Removed tabs 2017-02-22 08:26:52 +00:00
Phil Nash
2e08bfe9cc Single include generator now handles spaces between # and include 2017-02-22 08:05:31 +00:00
Phil Nash
d2a59ad37b Fixed test spec parser issue
- multiple specs in a single string, with escapes in each were erroring out
2017-02-22 07:49:38 +00:00
Phil Nash
10dfca34ac Added first vector matchers (Contains and Equals) 2017-02-21 16:05:04 +00:00
Phil Nash
45d4096756 Generalised Matchers so objects and comparators can be different types 2017-02-21 15:52:03 +00:00
Phil Nash
4e6938d78e Moved matchers tests into their own file 2017-02-21 14:19:09 +00:00
Phil Nash
1ca8cefa9a Added #define needed for gettimeofday() to be declared on some versions of Cygwin 2017-02-21 11:32:32 +00:00
philsquared
ca66dd243c Added a couple more unimplemented assignment operators to silence VS2013 warnings 2017-02-21 09:10:44 +00:00
philsquared
44632c3d71 Merge branch 'warning-c4512' of https://github.com/gchudnov/Catch into gchudnov-warning-c4512 2017-02-21 08:56:14 +00:00
philsquared
aa28196e8b Ignore .vs folder 2017-02-21 08:52:08 +00:00
Martin Hořeňovský
5d8055319e Updated docs to reflect the change to leak checking 2017-02-18 17:24:31 +01:00
philsquared
b1835e1de9 Moved WIndows leak detector code out of main() 2017-02-17 23:43:31 +00:00
Martin Hořeňovský
8cd413572a Merge branch 'dev-windows-leakdetection' 2017-02-17 14:25:08 +01:00
Martin Hořeňovský
30e4dbef1c Report leaks to debugger in addition to stderr
This branch should also close #120.
2017-02-17 14:22:57 +01:00
Phil Nash
90b3946e9c Add file/line to TestCase, Section and Failure elements in Xml Reporter 2017-02-17 10:26:17 +00:00
Martin Hořeňovský
9202a77498 Documentation improvement 2017-02-16 11:11:52 +01:00
Martin Hořeňovský
d8230a8d4d Add opt-in leak detection under MSVC + Windows.
Closes #439
2017-02-16 11:09:09 +01:00
Martin Hořeňovský
c6178601c5 Cygwin compatibility fixes 2017-02-15 17:57:22 +01:00
Martin Hořeňovský
2e0ae01b05 Improve -Wparentheses supression for gcc
If the gcc version supports `_Pragma` properly, we use that to disable
it locally inside assertions.

Otherwise we disable it for the entire TU.

Fixes #674
2017-02-15 17:11:44 +01:00
Phil Nash
1f71d1f760 Some minor clean-up to Python script 2017-02-15 11:54:47 +00:00
Phil Nash
fe690a68ef push/pop warnings when disabling parentheses warnings within assertion (gcc/ clang) 2017-02-15 10:03:28 +00:00
Martin Hořeňovský
c9a37c59c4 Added CATCH_CONFIG_FAST_COMPILE to documentation. 2017-02-15 10:42:11 +01:00
Martin Hořeňovský
3cfef738e7 Merge branch 'dev-performance-round3' 2017-02-15 10:35:01 +01:00
Phil Nash
5cb9e47034 Added SOCI to open-source users 2017-02-15 08:39:21 +00:00
Phil Nash
044b616127 Added link to matchers docs from readme 2017-02-15 08:30:47 +00:00
Kevin Wojniak
f88049169e Fix wrong short option for section 2017-02-15 08:17:43 +01:00
Martin Hořeňovský
7b13a8f85a Move debug break out of tests, speeds up compilation time
This is hidden behind CATCH_CONFIG_FAST_COMPILE
2017-02-14 15:35:12 +01:00
Martin Hořeňovský
6da5e0862a Benchmark script: allow passing flags to compiler 2017-02-14 15:34:17 +01:00
Martin Hořeňovský
2049113935 Benchmark script: use median AND mean of compile time 2017-02-14 15:34:00 +01:00
Phil Nash
d4ae1b18c0 Matcher documentation 2017-02-14 09:16:54 +00:00
Phil Nash
2081caa452 Import MatcherBase to Catch namespace 2017-02-14 09:16:54 +00:00
Phil Nash
a5a013811c Renamed toStringUncached -> describe 2017-02-14 09:16:54 +00:00
Phil Nash
1400127d6f Extracted string matchers impl into cpp that is only compiled into main TU 2017-02-14 09:16:54 +00:00
Phil Nash
7fed25ad1f New Matchers implementation
- simpler
- less templates and machinery
- no cloning, copying or unnecessary heap allocations
- better factored
2017-02-14 09:16:54 +00:00
Phil Nash
5530303be7 Removed test for invoking String Matcher with NULL (this will no longer be supported) 2017-02-14 09:16:54 +00:00
Martin Hořeňovský
29fa1edcc7 Added appveyor.yml for CI with VS {2013, 2015} for {Win32, x64} 2017-02-14 09:37:37 +01:00
Phil Nash
1cb8bafb1f Added missing #include in test file 2017-02-13 17:43:43 +00:00
Phil Nash
d08cee288f v1.7.2 build 2017-02-13 16:15:42 +00:00
Phil Nash
873ef276b6 XML Reporter closes tag and flushes stream at end of TestCase and Section tags.
This fixes an issue where XML reports on stdout are broken by printf statements
2017-02-13 15:56:25 +00:00
Martin Hořeňovský
bc68b9f454 More include simplifications 2017-02-13 14:12:22 +01:00
Phil Nash
67d513aa73 Removed single char contains()
- had incorrect prototype anyway
2017-02-13 08:20:45 +00:00
Phil Nash
9a3486a705 Replaced use of dynamic_cast with static_cast.
It wasn't necessary anyway.
This addresses #821
2017-02-12 22:00:17 +00:00
Martin Hořeňovský
d890791800 Fixed editing mishap in documentation. 2017-02-12 15:48:32 +01:00
Martin Hořeňovský
26f6012bb9 Expanded the practical example in slow-compiles documentation 2017-02-12 14:47:25 +01:00
Martin Hořeňovský
50dee9ae57 Fixed typo in CLI error reporting 2017-02-12 13:50:15 +01:00
Martin Hořeňovský
b2a6fe971b Couple more includes cleaned out 2017-02-12 12:48:25 +01:00
Martin Hořeňovský
0837132ce3 Make the benchmarking script Python 2 compatible
Ended up using `time.time()`, even if it supposedly has worse accuracy,
because Python running under WSL supports `time.clock()` very badly.
2017-02-12 12:25:43 +01:00