Phil Nash
d89e74faff
Format floats like doubles when printing - but add ‘f’ suffix (a lá #291 )
2014-07-09 18:16:40 +01:00
Phil Nash
23181eeef0
Section no longer relies on copy-elision for correctness
...
- should address #293
- *may* address #271
2014-07-09 07:39:57 +01:00
Phil Nash
08e5296720
Regenerated single include and baselines
2014-07-03 19:08:44 +01:00
Phil Nash
9c1f9a8f9a
Added [!mayfail] tag to indicate test case that can fail without failing the suite.
...
Overhauled the summary report (including the expected failure count)
2014-07-03 08:09:57 +01:00
Phil Nash
d657b1ba52
Removed use of variadic form of SUCCEED from tests
...
- as per #284
2014-06-30 07:53:11 +01:00
Phil Nash
061861d940
Approved tag alias tests
2014-06-30 07:34:27 +01:00
Phil Nash
1d210ebd37
Tag aliases feature
2014-06-30 07:33:17 +01:00
Phil Nash
9438a03d5b
Big assertion capture refactoring.
...
- moved as much logic out of the macros as possible
- moved most logic into new ResultBuilder class, which wraps ExpressionResultBuilder (may take it over next), subsumes ResultAction and also takes place of ExpressionDecomposer.
This introduces many SRP violations - but all in the name of minimising macro logic!
2014-05-28 18:53:01 +01:00
Phil Nash
14796814b8
Approved new test case
2014-05-23 18:55:05 +01:00
Phil Nash
7cbf74061b
Tweaked rawMemoryToString() along lines of suggestion in #281
2014-05-23 18:41:02 +01:00
Phil Nash
a2d8f774d2
Approved new test output
2014-05-20 18:28:48 +01:00
Phil Nash
2c9e9ac004
Fixed space separated lists of test specs
...
- they form an AND expression. They were forming an OR expression due to changes made to fix -f - so that had to be fixed differently
2014-05-20 18:28:19 +01:00
Phil Nash
baf181f15d
Minor fixes to a couple of test names
2014-05-20 18:11:43 +01:00
Phil Nash
3bdc97d8ad
Suppressed a load of warnings
2014-05-19 18:57:14 +01:00
Phil Nash
7139035906
Updated approvals after adding extra tests
2014-05-19 18:21:01 +01:00
Phil Nash
fcf0deb116
Fixed issue with wildcards at the start of a string
2014-05-19 18:07:53 +01:00
Phil Nash
9bf43e7875
Refactored last usages of old tag parser and removed all the, now redundant, tag parsing code
2014-05-16 18:52:55 +01:00
Phil Nash
766491a7c4
Approved all the changes following name/ tag parser rework
2014-05-16 18:31:15 +01:00
Phil Nash
b1e7d161b5
Moved catch_test_spec.h to catch_test_spec.hpp
2014-05-16 18:28:58 +01:00
Phil Nash
ae75b3774a
Switched over to new name/ tag parser
2014-05-16 18:24:07 +01:00
Phil Nash
56b8d3a5f9
Moved new test spec code into appropriate header
...
- about to remove old test spec code and rewire throughout the codebase!
2014-05-16 07:23:31 +01:00
Phil Nash
72e67693d4
Small test spec parser refactoring
2014-05-16 07:07:28 +01:00
Phil Nash
f8cff10ff6
First cut of new test spec parser code
2014-05-16 06:50:00 +01:00
Phil Nash
5a2df71b41
build 42: “compact” reporter
...
- thanks to Martin Moene
2014-05-01 19:07:02 +01:00
Phil Nash
1a6f2a0a80
Changed the way noexcept support is handled to (hopefully) fix #275 and #273
2014-04-23 18:19:19 +01:00
Phil Nash
31caba4f73
Added test for invisibles
2014-04-23 07:07:27 +01:00
Phil Nash
48153e8e10
Considers endianness when printing raw memory into a string
2014-04-22 08:19:11 +01:00
Phil Nash
a020865990
Sections are, once again, eagerly entered.
...
When the section tracking code was rewritten a while back to simplify and iron out some bugs the order of evaluation was changed so that each new section was skipped on the first run through.
This had unwelcome consequences for some people.
This commit restores the original semantics (while maintaining the simpler, less buggy, new code).
2014-04-21 19:02:38 +01:00
Phil Nash
87891cf38b
Updated approval tests baselines
2014-04-16 18:00:55 +01:00
Phil Nash
20cad7cb1d
Tags beginning with a non alpha-numeric character are now disallowed.
...
Added !throws special tag which denotes a test case to be skipped when run with -e
(the idea being that the test case is expected to throw an exception which is not caught within a XXX_THROWS assertion).
2014-04-15 18:44:37 +01:00
Phil Nash
1bccc03213
Secondary fix for #270 (addresses same issue with CHECK)
2014-04-12 19:20:46 +01:00
Phil Nash
a176b93738
Fix for #270 (REQUIRE continues if test throws an exception).
...
Added test case that reproduced the bug then applied the fix.
2014-04-12 19:07:24 +01:00
Phil Nash
e9d35377fa
re-approved following recent command line description tweak
2014-04-12 19:05:03 +01:00
Phil Nash
fd879f7e77
Build 28
...
- new version of Clara
- removed command line tests
2014-03-06 08:17:24 +00:00
Phil Nash
b9fea75109
New version of Clara.
...
- updated command line setup with new API
- updated STITCH macros
- force embedded Clara to use Catch’s console width (but restore it after)
- remove command line tests (as these have now moved into the Clara project)
2014-03-06 08:16:06 +00:00
Phil Nash
c98a97cf90
Tweaked Cliche macros/ names
2014-02-10 17:30:12 +00:00
Phil Nash
4554155e3d
Made Clara a “Cliche” header, which will be usable independently of Catch.
...
- This is just a first step. It still has a dependency on catch_text.h, which also needs to be made a Cliche header.
- These then need their own homes on GitHub.
2014-02-10 17:20:30 +00:00
Phil Nash
e091018514
Fixes toString() for function pointers and added support for member function pointers.
...
- thanks to Malcolm Noyes for supplying sample code on which the solution here was based
2014-01-07 17:25:27 +00:00
Phil Nash
886d9d397c
Reporter command line parser errors more eagerly
...
- show all “unrecognised option” errors
2013-12-20 19:06:02 +00:00
Phil Nash
1aa60fada9
Changed Approx::toString() to be implemented in terms of toString( double ) (as proposed in #233 )
2013-12-19 18:41:55 +00:00
Phil Nash
fb90d38310
Changed stdout/ stderr messages to be less misleading
2013-12-19 08:07:33 +00:00
Phil Nash
557b3bdbe3
Made SUCCESS variadic too (optional stream)
2013-12-14 23:16:03 +00:00
Phil Nash
9d7b77956c
build 19
...
- fixes nullptr regression (I had accidentally left in some dev changes)
2013-12-14 22:53:28 +00:00
Phil Nash
859760abb4
Build 18
2013-12-14 14:34:05 +00:00
Phil Nash
b4625208d0
Test for FAIL that doesn’t take an argument
2013-12-14 14:30:58 +00:00
Phil Nash
a1e87a4b7d
trim test/ section names in xml reporter
...
- BDD-style test names have leading spaces for alignment in the console reporter
2013-12-10 08:20:46 +00:00
Phil Nash
de49ec4d7c
Fixed broken single header following script change
...
- fixed the script (was missing #ifdefs)
- also fixed single include (Xcode) test project
- build 16
2013-12-04 20:25:14 +00:00
Phil Nash
3524321295
Removed some cruft
2013-12-04 07:58:21 +00:00
Phil Nash
c4a089c12b
Refactored a lot of code from headers into impl headers only compiled into one TU
...
- also added noimpl option to single header script - which only generates the non impl code
2013-12-03 18:52:41 +00:00
Phil Nash
ba13f3f098
Restored second arg to a TEST_CASE for non variadic compilers
2013-11-21 08:08:05 +00:00
Phil Nash
ca7292e3a7
Removed redundant MetaTestRunner
2013-11-19 19:03:11 +00:00
Phil Nash
337dc25ed7
Converted all test case names to "modern" style (freeform text + tags)
2013-11-19 07:21:03 +00:00
Phil Nash
4f57c8c589
Print warnings if no assertions and not running with -s
2013-11-13 08:07:38 +00:00
Phil Nash
93a945cee9
Fixed uninitialised members in Context object
2013-10-23 15:35:07 +01:00
Phil Nash
aafed303bb
Added an extra tag test
2013-10-17 18:02:09 +01:00
Phil Nash
a35ee200da
Filter out version number from approval tests
2013-09-30 08:05:14 +01:00
Phil Nash
16c21ee265
No, really trim paths in approval tests down to just filenames
2013-09-30 08:01:10 +01:00
Phil Nash
1e74938538
Trim paths in approval tests down to filenames
2013-09-30 07:39:06 +01:00
Phil Nash
2f7a296897
Split approve file into multiple files
2013-09-27 19:01:14 +01:00
Phil Nash
41b27af45b
Fix for comma separated tags on the command line
...
- also added more test for tags
2013-09-25 18:40:07 +01:00
Phil Nash
1e2f1d1603
Fixes toString forward reference issue:
...
- as raised in https://github.com/philsquared/Catch/pull/195
2013-09-14 19:58:45 +01:00
Phil Nash
f7378eebb6
Fixed string indexing bug
2013-09-07 12:07:38 +01:00
Phil Nash
46118714b1
Build 8
...
- includes command line tweaks and fixes for durations
2013-08-16 19:01:32 +01:00
Phil Nash
1870ca8455
Some Clara/ command line clean-up and tweaks
2013-08-16 18:57:57 +01:00
Phil Nash
3faa412855
Removed basic reporter
2013-08-15 19:09:07 +01:00
Phil Nash
11b5179ceb
Redacted test durations from JUnit reporter output in approval test script
2013-08-15 18:50:40 +01:00
Phil Nash
2ddb9d3802
Completed CumulativeReporterBase and reimplemented JUnitReporter in terms of it
2013-08-15 18:39:55 +01:00
Phil Nash
29ccaa67ad
Replaced currentSectionInfo and m_rootSection with m_sectionStack
2013-08-08 08:05:19 +01:00
Phil Nash
6339254cb2
First cut of Timer class.
...
- started integrating with reporters (now (optionally) supported in console reporter).
- introduced Node<> template to help with cumulative reporting and used it instead of ThreadedSectionInfo.
2013-08-07 18:56:35 +01:00
Phil Nash
b80280f428
Tidied up reporting of missing assertions in test cases
...
- also removed basic reporter from approval test
2013-07-26 19:19:44 +01:00
Phil Nash
28d3881ff9
Merged TestCaseTracker and SectionTracker and introduced TestCaseTracker::Guard
2013-07-25 08:07:55 +01:00
Phil Nash
9aff9aa328
Integrated new section tracker.
...
- also pass extra section to reporter - one for each test case - ignore it in headers
(this is so we know a test case has restarted)
- significant effect on regression test due to change of ordering of sections
- fixes infinite loop issue
2013-07-24 19:13:08 +01:00
Phil Nash
6a484fdb02
Reworked SectionTracker and moved into own header
2013-07-23 18:48:36 +01:00
Phil Nash
372a6c6fed
Small fixes and started new section tracking code
2013-07-23 08:15:34 +01:00
Phil Nash
ad7445d33c
build 5
...
- added throw() to streambuf destructor overrides (#182 )
2013-07-02 08:49:29 +01:00
Phil Nash
3907559896
build 4
2013-07-01 19:02:29 +01:00
Phil Nash
109f46a48b
Fixed broken test
2013-07-01 19:00:55 +01:00
Phil Nash
066a6388d6
Fix for #179
2013-07-01 18:45:19 +01:00
Phil Nash
4b5e008b20
guard NOMINMAX definition (windows)
2013-06-29 20:31:17 +01:00
Phil Nash
cd688300b0
Build 2
2013-06-29 12:11:32 +01:00
Phil Nash
5d26ca1af7
Static assertion for && and || expressions
2013-06-29 12:07:33 +01:00
Phil Nash
a9b346b14d
Removed line numbers from approval tests of xml too
2013-06-29 12:04:38 +01:00
Phil Nash
40b8c7794c
Removed line numbers from approval tests
2013-06-29 11:59:49 +01:00
Phil Nash
b5fd5a6496
INFO and CAPTURE are now scoped
...
- SCOPED_INFO and SCOPED_CAPTURE are now just aliases
2013-06-28 17:09:57 +01:00
Phil Nash
0d357302a0
INFOs only reset at assertion if consumed
2013-06-28 16:25:49 +01:00
Phil Nash
239fa28e46
Added run without -s to approvals
2013-06-28 16:23:14 +01:00
Phil Nash
47751e4df3
Approved [.] change
2013-06-28 16:07:42 +01:00
Phil Nash
9c39a5e8dd
Support [.] as alias for [hide]
2013-06-28 16:05:13 +01:00
Phil Nash
235204393a
Big merge from Integration
...
- now v1.0 build 1
2013-06-28 14:11:28 +01:00
Phil Nash
c57ebc84b2
Approved latest changes
2013-06-05 08:20:34 +01:00
Phil Nash
cb60d130f8
Runner -> RunContext, Runner2 -> Runner and fixed issue with processName
2013-06-05 08:18:52 +01:00
Phil Nash
2ed56c47a6
Removed legacy cli parser
2013-06-04 08:38:40 +01:00
Phil Nash
aee9b75e37
Now fully switched over to Clara-based command line with modified args
2013-06-04 08:37:28 +01:00
Phil Nash
0514fe4f38
Got parseCommandLine ready to use new Clara (but not doing so yet)
2013-05-31 18:48:31 +01:00
Phil Nash
c9f0f55451
Last changes to ConfigData names (for now)
2013-05-31 08:01:56 +01:00
Phil Nash
40e529740c
Removed stream name from config
2013-05-29 19:06:25 +01:00
Phil Nash
3f184e22e8
ConfigData now looks virtually identical to the Clara test Config
2013-05-29 19:01:06 +01:00
Phil Nash
20ddb0055f
ConfigData just keeps strings for test names/ specs/ tags (processed in Config actor)
2013-05-29 18:56:29 +01:00
Phil Nash
c2ca80d9fb
Config refactoring: split List enum into three bools
2013-05-29 18:42:46 +01:00
Phil Nash
3c3beb57c3
More config refactoring
2013-05-29 18:34:11 +01:00
Phil Nash
be8fd82f20
Started nudging ConfigData towards new layout
2013-05-29 08:12:57 +01:00
Phil Nash
ca9b92f8fa
Most of system now uses Ptr<IConfig const>
2013-05-28 18:51:53 +01:00
Phil Nash
e1459955f1
Refactoring towards interface based config
2013-05-28 18:39:32 +01:00
Phil Nash
10fa0593db
Moved Clara into its (her?) own file
2013-05-27 10:52:58 +01:00
Phil Nash
1e547afe79
Tweaked some option names and added verbosity
2013-05-24 19:23:44 +01:00
Phil Nash
ab6dd55fcf
Clara: formatting and code tweaks
2013-05-23 19:01:10 +01:00
Phil Nash
b7632659f5
Clara: Usage strings for args
2013-05-21 19:21:24 +01:00
Phil Nash
ed79d726be
Clara: support for positional arguments
2013-05-21 08:15:50 +01:00
Phil Nash
30cb460d42
Clara: added test for positional arg
2013-05-20 18:45:33 +01:00
Phil Nash
3dde25be7d
Clara: support for binary functions
2013-05-20 18:40:51 +01:00
Phil Nash
d44f2cf40f
Added binding to free functions (and renamed hierarchy)
2013-05-20 08:31:12 +01:00
Phil Nash
d4305377b7
Fixed inconsistency in reporting of _FALSE (negated) expressions
2013-05-17 19:35:33 +01:00
Phil Nash
374335fc84
Approved current output
2013-05-17 08:18:42 +01:00
Phil Nash
6574f639a3
Refactored CLI tests and converted main one into a scenario
2013-05-17 08:00:57 +01:00
Phil Nash
8d1100daa6
Clara: added -r option
2013-05-17 07:43:58 +01:00
Phil Nash
8333e644f2
Clara: some refactoring
...
- moved all internal stuff into Detail
- moved Parser out of CommandLine, encapsulates tokens.
- allow unused tokens to be feed into different CommandLine processors
2013-05-16 19:07:50 +01:00
Phil Nash
58846c395c
Clara: Added support for compact short opts (e.g. -peb)
2013-05-16 08:21:13 +01:00
Phil Nash
372a8b018d
New CLI parser impl
2013-05-15 19:25:34 +01:00
Phil Nash
597ed1f79d
handle TEST_CASE_METHOD macro consistently
...
- internally define INTERNAL_CATCH_TEST_CASE_METHOD
2013-05-14 19:31:21 +01:00
Phil Nash
0c5626962a
test case for infinite loop
2013-05-13 08:20:45 +01:00
Phil Nash
11e55161e1
Some refactoring of Clara impl and experimental string based interface
2013-05-07 18:53:14 +01:00
Phil Nash
e2f93b6507
Clara: Allow space separator, as well as : and =
2013-05-03 08:08:46 +01:00
Phil Nash
a13ab71cbf
Clara: Some renames and changed the addOption interface
2013-05-02 18:41:08 +01:00
Phil Nash
ed45ceb786
Added support for binding to methods and generating usage strings.
...
Also renamed namespace to Clara
2013-05-01 19:01:48 +01:00
Phil Nash
46846a47f3
More CmdLine work
...
- Support for non string values
- Support for chaining parsers
2013-04-29 19:26:18 +01:00
Phil Nash
26ae11774b
First draft of future opt parser lib
2013-04-27 12:26:13 +01:00
Phil Nash
8defc71e6d
Build 38
2013-04-24 19:10:02 +01:00
Phil Nash
1309da2b55
approved changes relating to no-return functions
2013-04-24 18:51:34 +01:00
Phil Nash
bf37e6879a
Removed use of compiler specific techniques for denoting non-returning functions
...
- use if( Catch::isTrue( true) ) to guard throws instead
2013-04-23 20:52:49 +01:00
Phil Nash
d0d4d93a6b
Build 37
...
- string matchers work with NULLs
- removed stray CATCH_CONFIG_SFINAE for GCC 3
2013-04-23 08:02:48 +01:00
Phil Nash
06548a5b61
Fix for #144
...
- string matchers now work with NULLs
2013-04-23 07:59:56 +01:00
Phil Nash
471eba2c32
Build 36
...
- incorporation of pull request #154 to allow comparison with nullptr_t
- some compiler capability tweaks
2013-04-22 18:55:12 +01:00
Phil Nash
4dd3f68dd9
Compiler capabilities clean-up
...
- renamed CATCH_SFINAE -> CATCH_CONFIG_SFINAE
- moved variadic macros detection into catch_compiler_capabilities.h
2013-04-22 08:19:17 +01:00
Phil Nash
dd52044374
Build 35
...
- non-SFINAE IsStreamInsertable
2013-04-20 23:20:05 +01:00
Phil Nash
003960dc90
Returned to older version of IsStreamable
...
- this time based on code from Martin Moene
https://gist.github.com/martinmoene/5418947#file-insertionopdetector-cpp
2013-04-20 23:12:17 +01:00
Phil Nash
19279250e8
Build 34
...
includes:
- SFINAE version of IsStreamable (where available)
- new Text class that replaces LineWrapper (internal)
- fix for spurious double exception reporting (#164 )
2013-04-20 21:07:32 +01:00
Phil Nash
2666c96d4e
Fixes issue #164
...
- Removed spurious (re-)throw when catching unexpected exception
2013-04-20 21:04:32 +01:00
Phil Nash
b3acf45d70
Fully committed to new Text class.
...
- moved impl into .hpp
- replaced last few uses of LineWrapper with Text
- removed LineWrapper
2013-04-20 19:36:40 +01:00
Phil Nash
d37a8e8f98
Revert "Refactored line wrapping in Text constructor a bit"
...
This reverts commit e43d4a2028
.
2013-04-20 18:40:10 +01:00
Phil Nash
e43d4a2028
Refactored line wrapping in Text constructor a bit
2013-04-20 18:37:42 +01:00
Phil Nash
54ca219aad
Text class is now full replacement for LineWrap
2013-04-20 11:27:28 +01:00
Phil Nash
7059c6e1c3
Text class mostly working
...
- tabs not yet working
2013-04-19 19:08:32 +01:00
Phil Nash
052dc18c76
Remove SFINAE support for all unknown compilers
2013-04-18 07:40:19 +01:00
Phil Nash
5062d3e92b
Added (conditional) SFINAE support.
...
Better streamable detection for toString using SFINAE (falls back to non-SFINAE version without)
2013-04-16 22:55:31 +01:00
Phil Nash
243f2d2caf
build 33
2013-04-12 10:43:06 +01:00
Phil Nash
3bd4241795
Fixed Junit issue with REQUIRE_THROWS
...
- As mentioned by @SebDyn in GitHub issue #5
2013-04-08 12:05:32 +01:00
Phil Nash
8764177c0e
build 32
2013-04-08 11:50:41 +01:00
Phil Nash
12c16fff8d
Build 31
...
- new Colour class
- Headers are wrapped, with special indentation for given/ when/ then
2013-04-05 20:58:01 +01:00
Phil Nash
4746caacaf
LineWrapper can indent first line differently to subsequent lines
...
- use this to wrap Given/ When/ Then with indent after the :
2013-04-05 20:55:57 +01:00
Phil Nash
a3703faa0a
First cut of new Colour class (to replace TextColour)
2013-04-05 07:47:36 +01:00