Commit Graph

265 Commits

Author SHA1 Message Date
Phil Nash
9e529853ee Fixes compiler error for some versions of GCC
- Manual application of PR #196 (couldn’t merge)
- See also #226
2013-12-18 08:37:23 +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
ef95020239 Stop overloading virtualise defined at multiple levels 2013-12-07 09:08:01 +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
4f57c8c589 Print warnings if no assertions and not running with -s 2013-11-13 08:07:38 +00:00
Phil Nash
2f086ae255 If no assertions print custom message 2013-11-12 19:06:08 +00: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
f41fad7e20 Don't report durations if not reporter anything else 2013-08-16 18:57:41 +01:00
Phil Nash
3faa412855 Removed basic reporter 2013-08-15 19:09:07 +01:00
Phil Nash
d68510d6e3 Removed legacy JUnit reporter 2013-08-15 18:49:38 +01:00
Phil Nash
2ddb9d3802 Completed CumulativeReporterBase and reimplemented JUnitReporter in terms of it 2013-08-15 18:39:55 +01:00
Phil Nash
1f519dd856 Added LazyStat wrapper 2013-08-08 08:24:37 +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
649f8c24b1 Removed now redundant handling for missing assertions in test cases
- handled as part of sections
2013-07-26 19:28:34 +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
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
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
0d357302a0 INFOs only reset at assertion if consumed 2013-06-28 16:25:49 +01:00
Phil Nash
cb60d130f8 Runner -> RunContext, Runner2 -> Runner and fixed issue with processName 2013-06-05 08:18:52 +01:00
Phil Nash
e1459955f1 Refactoring towards interface based config 2013-05-28 18:39:32 +01:00
Phil Nash
d4305377b7 Fixed inconsistency in reporting of _FALSE (negated) expressions 2013-05-17 19:35:33 +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
7059c6e1c3 Text class mostly working
- tabs not yet working
2013-04-19 19:08:32 +01:00
Phil Nash
bd5910ef9f Moved line info in header again 2013-04-17 00:05:25 +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
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
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
2c90533a26 More formatting/ colour tweaks 2013-04-01 11:25:54 +01:00
Phil Nash
2a17ef9081 Use SecondaryText code in lists 2013-03-29 21:55:19 +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
2e3c5fa2ad Addressed some warnings (mostly MSVC) 2013-03-25 08:46:48 +00:00
Phil Nash
a46ee0222a Print ~~~ at start of console output.
Some cleanup in the reporter code
2013-03-16 20:19:38 +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
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
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
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
10e891767f Dropped "Test case" and "Section" prefixes in test report headers 2013-01-17 11:47:23 +00:00
Phil Nash
0a87795535 Some test case header refactoring 2013-01-16 09:39:08 +00:00
Phil Nash
5a60ce2117 console reporter: got rid of spurious blank lines 2013-01-16 09:30:41 +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
097282e00e Merged test case/ sections headers 2013-01-15 08:43:27 +00:00
Phil Nash
9beb6f24a1 More console reporter refactoring 2013-01-15 08:09:20 +00:00
Phil Nash
313481006f Refactored printResultType and printMessage to work off a single switch 2013-01-14 19:28:28 +00:00
Phil Nash
3b970e20e9 Refactored printResultType into switch 2013-01-14 18:58:50 +00:00
Phil Nash
60ed3c142c Some tidy up 2013-01-14 18:51:49 +00:00
Phil Nash
21c479f5aa More console reporter tweaks and approved new output 2013-01-14 18:36:25 +00:00
Phil Nash
bb76e47704 More console reporter tweaks - mostly newlines 2013-01-14 08:34:50 +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
bcf722eb81 Reporter interface uses value types instead of shared ptrs again 2013-01-03 09:04:46 +00:00
Phil Nash
86ad6348d4 Split original/ expanded expressions over multiple lines 2012-12-14 07:49:18 +00:00
Phil Nash
eac51f38bd Fix for long headers 2012-12-13 12:57:49 +00:00
Phil Nash
a7079a2dbe Changed header and summary logs to multiline forms 2012-12-13 12:46:47 +00:00
Phil Nash
6488fc1c88 Console reporter: Don't print full path for every line 2012-12-11 09:02:31 +00:00
Phil Nash
6fb8260add Tweaks to summary counts in console reporter 2012-12-11 08:27:21 +00:00
Phil Nash
bcad093af7 Console reporter is now the default 2012-12-10 08:54:57 +00:00
Phil Nash
f4c0a1848d console reporter is now a full replacement for the basic reporter, using the new streaming interface directly 2012-12-09 21:46:15 +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
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
4b36001698 Tightened up ReporterConfig and added it to LegacyReporterAdapter 2012-11-26 23:28:00 +00:00
Phil Nash
8baa06c63e Split TestCaseInfo into a data only component and the test case function and behaviour.
Reporters only get to see the former
2012-11-25 11:19:55 +00:00
Phil Nash
06a671a349 Renamed TestCaseInfo -> TestCase 2012-11-22 19:17:20 +00:00
Phil Nash
37f3820747 Don't indent stdout/ stderr in JUnit reporter 2012-11-22 09:02:24 +00:00
Phil Nash
fe6d1a5838 Write stdOut/stdErr for each test car in JUnit reporter (for GitHub #5) 2012-11-21 18:04:10 +00:00
Phil Nash
deb3e9d4c4 Fixed SUCCEED so it logs message in basic reporter
Reverted previous change so that tests with no assertions but INFO macros now warn again (but an explicit SUCCEED does not)
2012-11-21 08:49:20 +00:00
Phil Nash
a90a88adcd Junit reporter uses filename for suite name if no explicit groups 2012-11-19 19:59:10 +00:00
Phil Nash
ef60d54671 Fix (hopefully) for #5 (reopened)
Adds name to JUnit reporter's testsuite element, even when running all tests.
Also removes redundant comment from the output.
2012-11-16 08:47:03 +00:00
Phil Nash
d539da9030 Implemented CHECK_NO_FAIL 2012-11-13 09:44:52 +00:00
Phil Nash
78fba28c4b Added className to TestCaseInfo
className is passed through from class based test methods and held in the TestCaseInfo.
For free-function based test cases it is set to "global".

The JUnit reporter uses the className value to populate he class attribute.
2012-11-04 21:11:59 +00:00
Phil Nash
355b95fda1 Cleaned up ANSI colour code impl a bit 2012-10-31 18:04:22 +00:00
Phil Nash
2e203a1834 Fixed remaining reporting regressions 2012-10-29 19:55:13 +00:00
Phil Nash
fe1d7c1d08 Small fixes and tweaks 2012-10-28 10:27:44 +00:00
Phil Nash
e04e74f896 More AssertionResult refactoring 2012-10-24 21:59:47 +01:00
Phil Nash
c597a893fa ResultInfo -> AssertionResult filenames and variables 2012-10-16 08:31:05 +01:00
Phil Nash
d16955f63a Renamed ResultInfo -> AssertionResult 2012-10-16 08:27:21 +01:00
Phil Nash
9444bbcb7b Added AllOf and AnyOf matchers 2012-10-12 07:58:17 +01:00
Phil Nash
625fc832ee Small naming correction 2012-09-03 08:18:32 +01:00
Phil Nash
a70fbe3c1a Completed NoAssertions warning implementation 2012-08-31 08:10:36 +01:00
Phil Nash
55764c8d47 Added warnings - first one: no assertions 2012-08-28 08:20:18 +01:00
Phil Nash
4c97fc5619 WIldcards at both ends 2012-08-24 08:23:50 +01:00
Phil Nash
a695eb9006 Builds almost completely cleanly with -WEverything in LLVM 2012-08-13 07:46:10 +01:00
Phil Nash
d2553cdc64 Made ReportConfig a value type 2012-07-20 19:07:42 +01:00
Phil Nash
f606517376 Fixed pluralization bug from GitHub issue #101 2012-07-20 18:47:45 +01:00
Phil Nash
19b2aa6187 Added cutoff option to command line
Aborts testing after a certain number of assertion failures
2012-06-01 19:40:27 +01:00
Phil Nash
163088a11f Refactored command line parser to be more cohesive
Also added a set of unit tests for them (incomplete)
2012-05-31 19:40:26 +01:00
Phil Nash
4f19705e09 Fixed GitHub Issue #90 2012-05-23 23:59:42 +01:00
Phil Nash
0afa09f7c1 Reformatting 2012-05-16 14:53:59 +01:00
Phil Nash
8d69208a58 Fixed some warnings
As referenced in GitHub issue #83
2012-05-11 19:05:53 +01:00
Phil Nash
b213202ad7 Added self-test for section ordering
Added MockReporter for tracking test runs.
Added intrusive smart pointer. Config holds reporter by smart pointer, so we can route the mock reporter through multiple test runs
2012-05-04 07:55:11 +01:00
Phil Nash
eca5637c58 First cut of Matcher support 2012-03-04 11:14:21 +00:00
Phil Nash
20df8c5da1 Added colorised console output for Windows
Also tweaks the output again
2012-02-25 20:36:22 +00:00
Phil Nash
5e5698b792 Test Case counts reported separately from assertions
Test case passed/ failures are counted as well as individual assertions. The basic reporter now reports them seperately
2012-02-25 09:39:13 +00:00
Phil Nash
edd8f02bec Pass totals around instead of individual success/ fail counts 2012-02-24 08:59:35 +00:00
Phil Nash
e1a2480f49 Cleaned up summary reporting
Improved newlines and pluralisation
2012-02-22 09:42:34 +00:00
Phil Nash
a57b025c9c Don't redirect stout for basic reporter 2012-02-17 09:28:21 +00:00
Phil Nash
7b449f7abe Ability to register line# for testing
Factored file/ line storage and formatting into common class.
Used in a static registry so failure messages can be asserted to have the file/ line in.
2012-02-15 08:20:06 +00:00
Phil Nash
07ff5f39fd GitHub issue #62
Initialise m_firstSectionInTestCase in Basic Reporter
2011-12-28 10:28:56 +00:00
Phil Nash
0afab69c7d Supress more warnings 2011-09-29 08:58:40 +01:00
Phil Nash
f5668fafd9 Made #include paths from reporters relative (again) 2011-06-02 08:49:47 +01:00
Phil Nash
823ea3efd4 Re-org 2011-04-26 08:32:40 +01:00