Commit Graph

472 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
Alexander Manenko
3627ee6f2e Fix build issue with TchRunnerMainView in XCode 5 2014-03-30 18:33:40 +03:00
Phil Nash
472dc2a61f New version of Clara
- interface changed slightly
- moved clara.h and tbc_text_format.h into “external” folder
2014-03-17 18:40:58 +00:00
Phil Nash
04f994a8fc Updated VS2010 project (removed CmdLineTests.cpp) 2014-03-07 06:53:30 +00:00
Phil Nash
9b4c7fa0f7 Updated cmake file with command line test removal 2014-03-06 08:21:47 +00: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
f899552d52 updated single include test project 2014-02-11 18:12:31 +00:00
Phil Nash
0dc49d1b57 Extracted stand-alone micro-library, tbc_text_format.h, from catch_text.h.
- use this version in clara.h so clara can stand alone.
2014-02-11 06:32:56 +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
f6d2fef26b Updated project for OCUnit 2013-12-18 08:37:35 +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
87b20e8dab SourceLineInfo takes char*s instead of std::strings 2013-12-04 08:12:30 +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
063593828c Removed deleted file from CMake 2013-11-21 08:07:37 +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
a9fd5b3f14 Removed cruft from VS projects 2013-11-14 23:35:56 +00:00
Phil Nash
d3c8c9839f Merge pull request #214 from AIM360/weibelt/fix-eol
Fixed crlf issue
2013-11-14 15:28:58 -08:00
Phil Nash
4f57c8c589 Print warnings if no assertions and not running with -s 2013-11-13 08:07:38 +00:00
Tobias Weibel
2e4be2125b Fixed crlf issue 2013-11-07 13:05:29 +01:00
Fraser Hutchison
69a3f161f9 Added CTest targets to perform basic test of --list-tests and --list-tags options. 2013-10-24 02:57:46 +01:00
Phil Nash
93a945cee9 Fixed uninitialised members in Context object 2013-10-23 15:35:07 +01:00
Phil Nash
a2bff4877e Merge branch 'master' of git://github.com/AIM360/Catch 2013-10-21 08:43:40 +01:00
Phil Nash
cb7b4ecbdc Updated VS2010 project 2013-10-21 08:31:17 +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
345a4eab9b Removed outdated Xcode 3 project 2013-09-26 07:30:49 +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
649cd13c4d Upgraded project for latest Xcode 2013-09-24 07:42:08 +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
638cf9feb4 Separated out catch_platform.h 2013-08-16 19:08:39 +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
Kosta
ba24e51306 cmake: call SelfTest exe instead of approvalTests script
Just call the SelfTest executable directly for testing, since there seems to be a problem with the approval tests python script right now.
2013-08-05 13:44:37 +02:00
Kosta
c4863842c8 more approval tests script debugging 2013-08-05 13:29:42 +02:00
Kosta
5553a538c5 tweak CMakeLists.txt 2013-08-05 12:57:29 +02:00
Kosta
ce441a9ba5 initial checkin of cmake and travis config files 2013-08-05 12:43:51 +02: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
ee647f5099 Removed displaced RunningTest class 2013-07-25 07:49:00 +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
5b15c21c9c Fixed iTChRunner 2013-06-12 19:05:21 +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
1ece38ed20 Moved legacy_reporter_adapter files back into internal 2013-04-08 21:36:08 +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
7af7451f78 LegacyReporterAdapter unbundles INFO messages from assertion to mimic legacy behaviour
- Moved LegacyReporterAdapter out into its own file(s)
2013-04-08 11:44:03 +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