Commit Graph

478 Commits

Author SHA1 Message Date
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
f3d1f08c3b Removed all trailing whitespace
- addresses #105
2013-07-03 19:14:59 +01:00
Phil Nash
503d5d0c8e Converted stray tabs to spaces 2013-07-03 08:25:11 +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
066a6388d6 Fix for #179 2013-07-01 18:45:19 +01:00
Phil Nash
ba9b2b5a37 Use MFCs windows include if present 2013-07-01 18:44:40 +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
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
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
a76d93ad54 Removed filename from --reporter option
(it's not implemented yet)
2013-06-26 08:42:05 +01:00
Phil Nash
5ddd6e31e4 Added #define NOMINMAX
- thanks to @robson3 in #171
2013-06-14 19:18:13 +01:00
Phil Nash
7d5f2715ce Fixed script for new readme
- updated README with new version
- fixed casing error for -e opt description
2013-06-07 21:15:25 +01:00
Phil Nash
786959d535 build 39 2013-06-07 19:07:50 +01:00
Phil Nash
11381c146c Tweaked indentation of errors and test lists 2013-06-07 19:06:30 +01:00
Phil Nash
27cae858d0 Use Text formatter to list reporters 2013-06-07 18:56:43 +01:00
Phil Nash
80557647d6 re-encapsulated session vars.
- construct Config object lazily
2013-06-07 18:41:22 +01:00
Phil Nash
f438e04b5d list options return number listed 2013-06-06 22:54:42 +01:00
Phil Nash
e035e2835d tweaks 2013-06-06 18:56:43 +01:00
Phil Nash
c1196b6245 Moved all Catch::Main()s into new Session class
- renamed them run()
- moved cleanUp call into destructor
2013-06-05 18:48:18 +01:00
Phil Nash
cb60d130f8 Runner -> RunContext, Runner2 -> Runner and fixed issue with processName 2013-06-05 08:18:52 +01:00
Phil Nash
1b47e11387 Added processConfig() method 2013-06-04 22:49:14 +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
f330fe7ef9 Made generated function name more obvious (for quickly finding in debugger's stack viewer) 2013-05-31 08:11:01 +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
f6892bfdf0 Listing is now in terms of interface (and calls to bool functions) 2013-05-29 07:59:01 +01:00
Phil Nash
6b8837bd93 Final refactoring to remove direct access to encapsulated ConfigData once in Config 2013-05-28 19:07:29 +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
d4305377b7 Fixed inconsistency in reporting of _FALSE (negated) expressions 2013-05-17 19:35:33 +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
8defc71e6d Build 38 2013-04-24 19:10:02 +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
2a9d8d9e36 Changed "const X ref"s to "X const ref"s
- Brought older code up to current convention (with the help of a Python script)
2013-04-23 18:58:56 +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
c887d1a167 Removed rogue CATCH_CONFIG_SFINAE for GCC 3.x 2013-04-22 22:20:42 +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
9fff9e47d3 Complete disable CATCH_SFINAE for now 2013-04-20 23:18:44 +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
97d99852a8 Refactored line wrapping in Text constructor a bit 2013-04-20 18:41:00 +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
cd9c72c66f Fixed BrightGreen in ANSI/ Posix case
- was yellow :-s
2013-04-09 19:49:58 +01:00
Phil Nash
1ece38ed20 Moved legacy_reporter_adapter files back into internal 2013-04-08 21:36:08 +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
f186a912d4 Switched TextColour out for Colour
- Removed TextColour
2013-04-05 07:59:28 +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
2c90533a26 More formatting/ colour tweaks 2013-04-01 11:25:54 +01:00
Phil Nash
67e9f01d38 Added some more wrap chars 2013-04-01 10:30:36 +01:00
Phil Nash
2a17ef9081 Use SecondaryText code in lists 2013-03-29 21:55:19 +00:00
Phil Nash
c7e602f3f2 Added SecondaryText colour enum
- slightly refactored ConsoleColour as well
2013-03-29 21:39:43 +00:00
Phil Nash
38f7eef6fe build 29 2013-03-29 13:44:33 +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
9e8abc33e7 Simplified StringWrapper
- by changing intoStream to << overload
- and removing redundant ctor
2013-03-27 23:36:58 +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
dd26e889b5 Build 28 2013-03-25 09:25:31 +00:00
Phil Nash
c563f6b1be Wrap expr results if they contain newlines 2013-03-25 09:24:13 +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
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
3453639732 tags can be specified using -t (or as default command)
Previously -g had to be used
2013-03-21 08:59:05 +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
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
32e70b2235 Fixes nil NSString issue reported in #159 2013-03-12 18:49:22 +00:00
Phil Nash
17479c6e49 Tag and test case name querying are now case insensitive 2013-03-12 18:47:53 +00:00
Phil Nash
d78cfe1275 Tweaked colours again 2013-03-12 18:47:01 +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
e57a56bb28 Converted tabs to spaces in some files where they have crept back in 2013-03-08 09:26:20 +00: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
5bdae8456c build 19 2013-02-19 19:47:18 +00:00
Phil Nash
10ed1e0e34 Handle section ends in the event of unexpected exceptions 2013-02-19 19:45:09 +00:00
Phil Nash
a8c6543bcc Merged Matcher changes to Objective-C bindings 2013-02-19 08:46:09 +00:00
Phil Nash
429699e797 Added className to TestCase in Obj-C 2013-02-19 08:39:28 +00:00
Phil Nash
7455c449ad Added class name to Obj-C test case 2013-02-19 08:34:30 +00:00
Phil Nash
f45e09a416 Default to using colour in unix based terminals 2013-02-19 08:19:00 +00:00
Phil Nash
dbcd833c72 Don't use ANSI colour codes when debugging 2013-02-18 13:02:49 +00:00
Phil Nash
d768b1b7f9 Fixed sticky INFO (which persisted across TEST_CASEs) from #152 and generated build 18 2013-02-04 00:05:16 +00:00
Phil Nash
a2773810db Build 17 - includes reworking of message/ info handling 2013-02-02 20:37:58 +00:00
Phil Nash
ad654867f1 Removed deprecated message code 2013-02-02 20:36:36 +00:00
Phil Nash
207b27b3c5 Changed the way info messages are handled.
This fixes issue with SCOPED_INFO and makes output more readable.
Needs some refactoring.
2013-02-02 19:58:04 +00:00
Phil Nash
e475645731 Build 16 2013-01-26 20:18:30 +00:00
Phil Nash
603002c644 Removed circular dependency between SectionInfo and its parent 2013-01-26 20:17:52 +00:00
Phil Nash
67ccd8d74a Allows console line width to be configured (and defaults to 80).
Line wrap is at console width-1
2013-01-26 20:06:55 +00:00
Phil Nash
3682433c2f console_reporter refactoring 2013-01-18 17:50:21 +00:00
Phil Nash
3ce320db4f More console reporter tweaks 2013-01-18 08:09:28 +00:00
Phil Nash
b588755a92 Tweaked console reporter some more 2013-01-17 12:07:34 +00:00
Phil Nash
2e7d966b76 Generated build 13 2013-01-16 09:44:43 +00:00
Phil Nash
f8ba2277d3 console reporter:
Always print test case + sections in header for every new section.
Group sections into single block
Tweaked BDD mappings to print out nicely with above
2013-01-15 23:14:52 +00:00
Phil Nash
42aef1d99c Fairly major reworking of console reporter (still in progress).
Changed reporter interface a bit.
2013-01-13 21:51:44 +00:00
Phil Nash
e9305ecd65 Fixed bug in generators 2013-01-09 19:32:50 +00:00
Phil Nash
bcf722eb81 Reporter interface uses value types instead of shared ptrs again 2013-01-03 09:04:46 +00:00
Phil Nash
0d4609f536 Clear state in AccumulatingReporter 2012-12-14 18:28:03 +00:00
Phil Nash
8b71158540 Fixed reference to basic reporter (to console reporter) 2012-12-14 18:17:47 +00:00
Phil Nash
cf5ced59d1 Build 12 2012-12-14 07:50:08 +00:00
Phil Nash
86ad6348d4 Split original/ expanded expressions over multiple lines 2012-12-14 07:49:18 +00:00
Phil Nash
f117812cff build 11: Console reporter changes 2012-12-11 09:03:14 +00:00
Phil Nash
bcad093af7 Console reporter is now the default 2012-12-10 08:54:57 +00:00
Phil Nash
e6d1c9897a Fleshed out console reporter 2012-12-09 11:20:46 +00:00
Phil Nash
ff03cdf2b2 Work in progress on Console reporter.
Includes regenerated single include for Obj-C fixes
2012-12-06 08:44:51 +00:00
Phil Nash
442463473d Updated obj-c bindings for new Matchers and TestCaseInfo changes 2012-12-06 08:41:38 +00:00
Phil Nash
fe98123d0b Started new reporter, "console", which will replace "basic" when done.
Introduced Option template as part of this.
2012-12-05 08:40:53 +00:00
Phil Nash
f276a0588c Added missing #include for assert to fix build failure 2012-12-02 00:05:51 +00:00
Phil Nash
a1fbfea659 Generated build 7 2012-12-01 23:57:18 +00:00
Phil Nash
e3e9e075b9 Capture RunInfo 2012-12-01 23:54:17 +00:00
Phil Nash
2632dca81d Completed IStreamingInterface abstraction with TestRunInfo and GroupInfo 2012-12-01 23:49:57 +00:00
Phil Nash
b56aaf4c36 Version uses constructor instead of initialiser to avoid warnings 2012-12-01 23:42:47 +00:00
Phil Nash
8255acf88f IStreamingReporter is now the default. Use REGISTER_LEGACY_REPORTER to register… you guessed it: legacy reporters
The built-in reporters are still legacy at the moment.
2012-11-30 19:29:03 +00:00
Phil Nash
4e12e12c1f Streaming reporter interface is now used natively.
Legacy reporters are adapted by their factories.
2012-11-30 19:15:23 +00:00
Phil Nash
7f04b56738 Reporter "stats" objects passed in by Ptr 2012-11-30 18:54:06 +00:00
Phil Nash
f4774d9642 Reference to legacy reporter adapter localised to one place 2012-11-30 09:13:27 +00:00
Phil Nash
ad6701d222 SectionInfo now goes via new streaming reporter interface 2012-11-30 08:58:46 +00:00
Phil Nash
95df676a27 Renamed SectionInfo -> RunningSection.
Added SectionInfo (that now corresponds to TestCaseInfo) and SectionStats
Switched some const T&'s to T const&'s
2012-11-29 20:31:17 +00:00
Phil Nash
3d6be037e9 Small logic tweaks 2012-11-29 20:11:46 +00:00