Commit Graph

53 Commits

Author SHA1 Message Date
Phil Nash
d43a47efca Refactored stream related stuff
- simpler, polymorphic hierarchy-based, approach
- less bitty conditionals spread across the code
- all resolved up-front so now config class is immutable
(it had evolved the way it was and in need of a clean-up sweep for a long time)
2015-09-29 19:23:06 +01:00
Phil Nash
4cb74761d9 Support for multiple reporters
- can't (yet) specify different targets for each reporter (e.g. different files)
2015-08-05 19:02:17 +01:00
Phil Nash
088c5bc53e --filenames-as-tags 2015-07-02 08:20:18 +01:00
Peter Huene
e5280b2c57 Add --force-colour option to force colour output.
Adding a --force-colour option to force colour output on POSIX systems,
provided a debugger is not attached.

This allows for Catch to output colours even if STDOUT is not a tty,
which can be the case when the test executable is being spawned by a
parent process (e.g. CMake's ctest).
2015-02-11 13:12:42 -08:00
Phil Nash
383d7c06a1 Only use std::cout/ cert via Catch::cout/ cert - and make those conditional on CATCH_CONFIG_NOSTDOUT 2014-10-02 19:08:19 +01:00
Phil Nash
fa0122bf54 Allow testing ordering to be specified as declaration, lexicographical, or random. Allow random seed to be specified 2014-09-15 18:39:31 +01:00
Phil Nash
1d210ebd37 Tag aliases feature 2014-06-30 07:33:17 +01:00
Phil Nash
ae75b3774a Switched over to new name/ tag parser 2014-05-16 18:24:07 +01:00
Phil Nash
7059b2cdac Added ability to show “invisibles” in strings (just tabs and newline chars, for now). 2014-04-22 18:23:42 +01: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
782c2b5891 Added ability to load names of tests to run from a file
- use -f to specify filename. Blank lines and lines starting with # are ignored
- also added --list-test-names-only to list test names out to file in a form that can be immediate read in by -f
2013-11-26 20:57:34 +00: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
f3d1f08c3b Removed all trailing whitespace
- addresses #105
2013-07-03 19:14:59 +01:00
Phil Nash
11381c146c Tweaked indentation of errors and test lists 2013-06-07 19:06:30 +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
aee9b75e37 Now fully switched over to Clara-based command line with modified args 2013-06-04 08:37:28 +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
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
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
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
Matt Wozniski
07e20aa706 Merge remote-tracking branch 'phil' into include-guard-fixes
Conflicts:
	single_include/catch.hpp
2012-09-26 21:42:44 -04:00
Phil Nash
c4160e9ef8 Fixed alternate stream bugs 2012-09-26 18:36:58 +01:00
Matt Wozniski
f29c898443 Normalize include guards for all *.h and *.hpp
Some files had include guards that didn't match the file name, and
others were missing the include guards entirely.

Standardized this so that every include file has an include guard, and
all the guards are of the form TWOBLUECUBES_<FILENAME>_<EXT>_INCLUDED
2012-09-17 01:53:39 -04:00
Phil Nash
c682a163b1 Restored quick way to add test programatically 2012-09-07 17:52:15 +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
56d5c42912 First cut of new filtering mechanism 2012-08-23 20:08:50 +01:00
Phil Nash
a695eb9006 Builds almost completely cleanly with -WEverything in LLVM 2012-08-13 07:46:10 +01:00
Phil Nash
fb386f458d Moved context object entirely into impl file 2012-08-08 08:33:54 +01:00
Phil Nash
d2553cdc64 Made ReportConfig a value type 2012-07-20 19:07:42 +01:00
Phil Nash
5d73c5a008 Resolve reporter outside of Config
config now only only holds reporter name
2012-07-17 08:04:19 +01:00
Phil Nash
4c73aa5a0e Factored ConfigData out of data 2012-06-08 08:22:56 +01:00
Phil Nash
46a3476731 Added nothrow command line option
Causes _THROWS family of macros to no evaluate expression
2012-06-05 20:50:47 +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
7035b55832 Matchers macro uses Catch::Matchers namespace internally - so it doesn't have to be declared with "using" first 2012-05-24 08:29:03 +01:00
Phil Nash
371db8b42f Context methods are non-static - accessed via interface
This is a move towards allowing multiple contexts - with the concept of a (possibly thread local) "current" context
2012-05-21 18:52:09 +01:00
Phil Nash
c67a7eef2b Moar reformatting 2012-05-15 23:58:23 +01:00
Phil Nash
5ec53b2788 renamed hub -> context
(also did some reformatting)
2012-05-10 07:58:48 +01:00