Commit Graph

386 Commits

Author SHA1 Message Date
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
Phil Nash
5c7d3d75cc build 30 2013-04-01 11:27:10 +01:00
Phil Nash
9d15d36748 Changed Xcode search paths for easier sharing of projects with Windows 2013-03-29 21:39:02 +00:00
Phil Nash
e324d2829d Added -l tags
- which lists available tags.
- also improved formatting of -l for tests
2013-03-29 11:42:10 +00:00
Phil Nash
15fd032608 Use new line wrapper to show test case list, with tags, in columns 2013-03-28 22:13:31 +00:00
Phil Nash
b052bd729a Refactored string wrapper
- to be much more flexible (writes to vector)
- fixed a couple of bugs
2013-03-27 19:08:16 +00:00
Phil Nash
016b063ae8 Line numbers changed and test added 2013-03-25 09:25:01 +00:00
Phil Nash
2927c240a1 Fixed line wrap bug
Added line wrap tests and modified wrap algo to wrap within words using a -
2013-03-25 09:20:51 +00:00
Phil Nash
29426b6359 Added vector resize test 2013-03-25 08:47:36 +00:00
Phil Nash
2e3c5fa2ad Addressed some warnings (mostly MSVC) 2013-03-25 08:46:48 +00:00
Phil Nash
6ba2057abd refactored toLower 2013-03-22 19:00:42 +00:00
Phil Nash
bd7f797e09 build 27 2013-03-21 09:00:24 +00:00
Phil Nash
49d7ce40e8 Minor tidy up 2013-03-21 08:58:22 +00:00
Phil Nash
9390675260 Build 26 2013-03-16 20:21:51 +00:00
Phil Nash
c0b698073e Initial support for variadic macros 2013-03-16 20:18:52 +00:00
Phil Nash
9c5bbab239 build 25 2013-03-13 20:54:19 +00:00
Phil Nash
37186a1d04 Added BDD macros
(Also includes regenerated files from previous commits)
2013-03-13 12:19:30 +00:00
Phil Nash
0db35c0f35 Cleaned up -Wpadded warning handling a bit more 2013-03-13 08:18:30 +00:00
Phil Nash
dc2735c23d Removed some cruft and warnings 2013-03-13 08:04:50 +00:00
Phil Nash
7542685a2f Moved "no test cases matched" message to reporter 2013-03-12 19:06:40 +00:00
Phil Nash
6d56d71318 build 24 2013-03-12 18:49:37 +00:00
Phil Nash
3df6c0d1b4 Refactored ConsoleColour impl. Tweaked the (Windows) colours a bit.
Also fixed issue that would cause warnings on some compilers when doing REQUIRE( p ); where p is a pointer.
Moved to build 23
2013-03-11 18:38:29 +00:00
Phil Nash
a04981b450 Build 22 2013-03-08 09:30:25 +00:00
Phil Nash
5de07c3a30 Removed unnecessary test 2013-03-06 20:41:02 +01:00
Phil Nash
b7ff995e89 Tidied up some loose ends with reporting test cases and sections (now handles them as a single block).
This should fixes an issue where sections not being printed when they should be (and reverses a workaround where they were being printed too much)
2013-03-06 20:40:16 +01:00
Phil Nash
90b2bfec3d Patched issue where an assert before the first section can cause a set-fault (needs a better fix, though) 2013-03-04 15:06:31 +01:00
Phil Nash
767f1588dc Added StringMaker (for partially specialising string conversions), extended BDD macros and moved file/line info to top of message.
Re-enable ANSI colour by default - hopefully properly excluding Windows this time
2013-03-04 12:19:15 +01:00
Phil Nash
ead139e094 Reverted ANSI colour change (it was failing for Windows)
Produced build 20
2013-02-19 19:59:04 +00:00
Phil Nash
10ed1e0e34 Handle section ends in the event of unexpected exceptions 2013-02-19 19:45:09 +00:00
Phil Nash
3f503851d7 Updated approval file 2013-02-19 18:51:46 +00:00