Commit Graph

946 Commits

Author SHA1 Message Date
Phil Nash 6de135c63a Given, When, Then prefixes are now std::strings
(and so can be prepended to std::strings themselves)
see #455
2015-07-22 18:07:28 +01:00
Phil Nash 5bbdc8fd38 Dev build 8 2015-07-15 23:03:11 +01:00
Phil Nash 72868920bb Exception message assertions now work with matchers 2015-07-15 23:02:25 +01:00
Phil Nash 8342ae8dfb dev build 7 2015-07-13 15:03:26 +01:00
Phil Nash 2104ca2aa4 Exception message testing now supports wildcards
- extracted WildcardPattern from TestSpec::NamePattern
2015-07-13 15:03:04 +01:00
Phil Nash 93a842e2f0 dev build 6 2015-07-13 06:36:07 +01:00
Phil Nash 85de743d70 Added _THROWS_WITH macros
- asserts on exception message
2015-07-13 06:34:41 +01:00
Phil Nash 1dd0d4c61a Force cout/ cerr to be initialised before errors in test registry are printed
- see #461
2015-07-10 07:46:19 +01:00
Phil Nash 57df3ba998 Force cout/ cerr to be initialised before errors in test registry are printed
- see #461
2015-07-10 07:44:37 +01:00
Phil Nash e6b365dc8c dev build 5 2015-07-07 08:25:15 +01:00
Phil Nash 02e1966db3 Changed --filenames-as-tags prefix to #, added -# as short form and updated docs 2015-07-06 18:46:50 +01:00
Phil Nash 584032dfa4 dev build 4
- undisturbed background colour (windows), from PR #456
2015-07-06 06:23:13 +01:00
Phil Nash 18acff62d3 Merge branch 'develop' of git://github.com/RandomInEqualities/Catch into RandomInEqualities-develop 2015-07-06 06:13:56 +01:00
Phil Nash c1ca0fdabe dev build 3 2015-07-03 18:30:25 +01:00
Phil Nash d6f1446e4e Fixed an issue on some compilers with implicit conversion from nullptr to Ptr
- also cleaned up some warnings to do with CATCH_NULL
2015-07-03 18:27:36 +01:00
Phil Nash 62e517f833 Fixed backslash detection in filenames-as-tags 2015-07-03 18:07:13 +01:00
csa 6160a2b079 Fix for white background in windows powershell when using colour output.
This commit fixes the white background that appears in windows powershell
when catch outputs messages with colour. The previous implementation
ignored the original background colour and defaulted to a white background.
2015-07-03 12:02:40 +02:00
Phil Nash 8f66e3495b dev build 2 2015-07-02 23:03:13 +01:00
Phil Nash d87e551efa reseeds rng before each test case and provides access to seed through Catch::rngSeed() function 2015-07-02 23:02:35 +01:00
Phil Nash b971fe785b develop build 1 2015-07-02 08:21:38 +01:00
Phil Nash 088c5bc53e --filenames-as-tags 2015-07-02 08:20:18 +01:00
Phil Nash 680b1a881b Squashed some warnings about local variables shadowing members
- see #444
2015-07-01 07:50:53 +01:00
Phil Nash 805de43a3d Use CATCH_NULL instead of NULL
- expands to nullptr if CATCH_CONFIG_CPP11_NULLPTR is defined (see #444)
2015-07-01 07:33:27 +01:00
Phil Nash 3b18d9e962 build for v1.2.1 2015-06-30 18:26:09 +01:00
Phil Nash 6d5797231c Split imply from TrackedSection class to avoid use of incomplete type
- see #450
2015-06-30 18:25:49 +01:00
Phil Nash 7ab3b5aefb Added compiler feature suppression macros
_NO_ forms to disable detection of features - particularly C++11 features.
Also removed SFINAE detection (and use in tostring)
2015-06-30 08:41:55 +01:00
Phil Nash 21f7ef6fdc Committed to semantic versioning
as prompted by #365, #430, #447 and a thread on the google group.
- split version bumping out of generateSingleHeader script
- separate scripts for bumping each version component
- "build" number only incremented for "develop" builds
2015-06-29 18:06:15 +01:00
Phil Nash 8cc1108f2b Use <= operator instead of ->* for decomposer
Allows more complex LHS expressions - and works around an Eclipse bug.
See Issues #359, #393 and #247 for details
2015-06-26 06:46:37 +01:00
Phil Nash c51e86819d build 3 2015-05-21 06:16:15 +01:00
Phil Nash fc63b020c5 suppressed some more warnings 2015-05-21 06:15:53 +01:00
Phil Nash 6ed74b5cab changed hex threshold on ints to 255
- and print it in *addition* to the decimal form
2015-05-20 18:28:22 +01:00
Phil Nash 43470b2606 Removed CATCH_CONFIG_CPP11_NULLPTR for VS2015
- as it was already there for VS2010 on
2015-05-19 22:38:30 +01:00
Phil Nash 318c936712 build 2 2015-05-19 22:31:57 +01:00
Phil Nash e86daf8bdd Reorganised C+11 feature detection a bit
and added CATCH_CONFIG_CPP11_NULLPTR for VS2015
2015-05-19 22:31:57 +01:00
Phil Nash c708570d46 Merge branch 'develop' of git://github.com/BMBurstein/Catch into BMBurstein-develop 2015-05-18 08:38:50 +01:00
Baruch 465454fecc Fix REQUIRE_FALSE so that it aborts test case 2015-04-29 13:54:47 +03:00
Phil Nash 37e556186c v1.1 build 1 (master)
Updated version for master and regenerated single include
2015-03-27 18:02:28 +00:00
Phil Nash 0ae7578028 Restored tag parsing when checking for reserved tags
- had been accidentally deleted in an earlier refactoring.
A bit worrying that this didn't get spotted sooner!
2015-03-04 19:01:25 +00:00
Phil Nash 090c74c420 Use reinterpret_cast to eliminate some warnings
#369
2015-03-04 19:00:29 +00:00
Phil Nash 572911d880 Changed comment to work around header stitching bug 2015-03-04 18:33:31 +00:00
Phil Nash a806c3e700 Build 14 2015-03-04 08:23:40 +00:00
Phil Nash 6d1da8e8d7 Merge branch 'develop' of git://github.com/peterhuene/Catch into peterhuene-develop 2015-03-04 08:06:04 +00:00
Phil Nash ce0b170dc2 Suppress warnings correctly for Intel compiler
#376
2015-03-04 07:54:35 +00:00
Phil Nash e04ba5c9f6 Removed over-eager assertion.
Doesn't hold if reporting due to a segfault
#377
2015-03-04 07:47:43 +00:00
Phil Nash 5eb7748a55 Changed relative #includes and made SourceLineInfo sortable (added < op) 2015-03-04 07:17:12 +00: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 7f5615272b build 13
toString for std:tuple
2014-12-30 18:47:29 +00:00
Phil Nash 75a08bbc6c Merge branch 'tuple_to_string' of https://github.com/PureAbstract/Catch into PureAbstract-tuple_to_string 2014-12-30 18:42:17 +00:00
Phil Nash d76e08113b build 12
- includes updated xml reporter
2014-12-30 18:26:07 +00:00
Phil Nash c6635a7b79 Added type attribute to xml reporter output
- reports the macro used
2014-12-30 18:25:27 +00:00
Phil Nash 6817bb099d Fixed up xml reporter and rebased 2014-12-30 18:24:31 +00:00
Phil Nash 3e0c501812 Fixed escaping of ' in TeamCity reporter 2014-12-29 20:04:54 +00:00
Phil Nash 1cbc4f2c9c Merge branch 'develop' of https://github.com/SeanCline/Catch into develop 2014-12-23 18:54:08 +00:00
Phil Nash 92f0836fd3 build 11 2014-12-22 20:18:05 +00:00
Phil Nash 7619920f86 Support for reporting skipped tests
- implemented by TeamCity reporter
2014-12-22 20:10:33 +00:00
Phil Nash 58dcb5ea92 Removed #includes for Catch headers
see comment in file for details
2014-12-22 19:45:16 +00:00
Phil Nash a9f16b18f7 Fix memset build error
Moved #include <cstring> to catch_reporter_bases.hpp
2014-12-22 07:42:25 +00:00
Phil Nash 576aff6085 build 10
First cut of TeamCity reporter
2014-12-21 00:21:23 +00:00
Phil Nash 3f9e3e21ea Some clean-up ready for first push to GitHub 2014-12-21 00:17:45 +00:00
Phil Nash 2771220a41 Cleaned up section headers
- and don't reprint test case name
2014-12-20 01:02:17 +00:00
Phil Nash 8ec959e936 TeamCity reporter work
expanded reporting - includes section headers
2014-12-20 00:46:02 +00:00
Phil Nash 5933d75cdc Fixed HasExpression check
classic spurious ! prefix
2014-12-19 19:25:53 +00:00
Phil Nash 3724463be7 Fixed escape order and expression reporting 2014-12-19 19:24:41 +00:00
Phil Nash 7306eb3cfc TeamCity reporter
added more detail to the assertion message
2014-12-19 19:05:24 +00:00
Phil Nash 458b3ae257 Fixed replace(inPlace) function
and added tests (should have done that in the first place - I'll never learn!)
2014-12-19 18:16:19 +00:00
Phil Nash db0421e840 First commit of (in progress) TeamCity reporter
Should run but is not complete
2014-12-19 17:52:33 +00:00
Phil Nash 91c17f34eb build 9 2014-12-15 07:26:31 +00:00
Phil Nash 0dd214f6db tags with . prefix are all hidden 2014-12-15 07:25:34 +00:00
Phil Nash 6725e09003 any tag prefixed with . hides the test 2014-12-15 07:07:59 +00:00
Phil Nash 13f98431ad build 8 2014-12-12 08:11:18 +00:00
Phil Nash ff9e51df7f toString( int ) uses hex for large values
now matches behaviour of unsigned int
2014-12-12 08:10:45 +00:00
Phil Nash bd9fbe25f6 Fixed toString for Approx
restored to a specialisation instead of an overload
2014-12-11 23:48:11 +00:00
Phil Nash b0545d1f12 Some toString cleanups 2014-12-09 18:49:58 +00:00
Phil Nash e54ac70671 build 7 2014-10-21 07:25:26 +01:00
Phil Nash bde3567f3e Cleaned up terminal colouring impl and added more config options 2014-10-21 07:24:30 +01:00
Sean D. Cline 6e99695610 XmlReporter enhancement: Add an attribute for the macro name of an expression. 2014-10-11 20:01:14 -04:00
Sean D. Cline ea81e98d6a XmlReporter enhancement: Add attributes for duration when requested by the command line. 2014-10-11 19:58:44 -04:00
Sean D. Cline b0e53a8ee0 Move the xml reporter away from the deprecated IReporter interface. 2014-10-11 19:41:52 -04:00
Phil Nash 12fe67cc82 Updated NonCopyable (to include C++11 version) and use for Session and Section 2014-10-03 08:15:27 +01:00
Phil Nash e606cebac5 Fixed #include 2014-10-02 19:13:21 +01: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 85b4e94192 build 6 2014-10-02 18:51:05 +01:00
Phil Nash 4b3fa4742b Use reset instead of assignment when updating auto_ptr/unique_ptr 2014-10-02 18:47:07 +01:00
Phil Nash b1936d3b0e Calls method of FatalConditionHandler (to avoid warnings) 2014-10-02 18:28:45 +01:00
Phil Nash ee3b265aa1 build 5 2014-09-18 18:25:10 +01:00
Phil Nash b62a1b5334 Moved RandomNumberGenerator out of function and pass in a named instance instead of a temporary - both for C++03 compatibility reasons 2014-09-18 18:24:41 +01:00
Phil Nash 16a7db036f enable nullptr for VS2010 2014-09-18 18:23:47 +01:00
Phil Nash 73a0744452 Backed out PR #307 (use nullptr from VS2005) as it seems clr specific 2014-09-17 18:06:47 +01:00
Phil Nash 6492560394 Made sorting functors const 2014-09-15 23:36:39 +01:00
Phil Nash 9630454b0f Added missing #include 2014-09-15 23:32:13 +01:00
Phil Nash 6a8e8ada0d build 4 2014-09-15 18:40:24 +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 ea33961b43 Factored out mention of "unprintable string" ("{?}") 2014-09-08 08:14:59 +01:00
Phil Nash 3e1d3c7271 Give (currently not used, so global only) group a name 2014-09-08 08:14:22 +01:00
Andy Sawyer 022a0b4fcb catch_tostring: toString for std::tuple 2014-09-04 00:31:11 +01:00
Andy Sawyer 3196937343 catch_tostring: Add includes for tuple, type_traits 2014-09-04 00:17:36 +01:00
Andy Sawyer 95956444b7 catch_tostring: Move toString overload declarations
- Put all the declarations of the overloads early in the file, so they
  get seen by the templates later on
2014-09-04 00:12:25 +01:00
Phil Nash 4caabfa45e build 3 2014-09-03 19:23:22 +01:00
Phil Nash fcf5ef0db6 Changed time function name to reflect that it actually returns Microseconds as reported in #323 2014-09-03 19:20:23 +01:00
Phil Nash dd22431fea Merge branch 'develop' of github.com:philsquared/Catch into develop
# By Andy Sawyer
# Via Andy Sawyer (1) and Phil Nash (1)
* 'develop' of github.com:philsquared/Catch:
  catch_tostring: tostring for enum class types
  SelfTest: Build as C++11, add EnumToString tests
  SelfTest: refresh makefile
2014-09-03 08:40:07 +01:00
Phil Nash 3eefa7f537 use nullptr in MSVC from 2005+
(based on PR #307 - thanks alex85k)
2014-09-02 08:30:57 +01:00
Andy Sawyer cd2a5aa688 catch_tostring: tostring for enum class types 2014-09-01 17:38:17 +01:00
Phil Nash 93b61e1194 v1.1 build 2 (develop branch)
- Signal hander support
2014-08-22 19:35:41 +01:00
Phil Nash 05743eeaa1 FatalErrorConditions now full close reporter states
- so the console reporter(s) show final summary and the xml reporters close their tags
2014-08-22 19:33:28 +01:00
Phil Nash c1a8e1c5dd Added signal handlers (and placeholder for SEH handlers)
- based on PR 232 (https://github.com/philsquared/Catch/pull/232 - thanks Lukasz Forynski)
- Writes to reporter, so gets all the usual context, but then exits directly (since the stack cannot be resumed) so no summary
- On Windows does nothing, as yet.
2014-08-22 08:07:39 +01:00
Phil Nash b7e432eadc Updated version for develop branch 2014-08-20 19:07:46 +01:00
Phil Nash 544bf33e73 build 53
includes wchar_t toString overloads and SCENARIO_METHOD macros
2014-08-20 08:09:32 +01:00
Phil Nash 7bc0b44597 Merge branch 'master' of https://github.com/jbrwilkinson/Catch
# By James Wilkinson
# Via James Wilkinson
* 'master' of https://github.com/jbrwilkinson/Catch:
  Added SCENARIO_METHOD for BDD testing with fixtures.
2014-08-19 08:13:30 +01:00
Ben Arnold 7b0a84a048 toString handles wchar_t raw strings 2014-08-14 12:28:23 +01:00
Phil Nash 0aae635035 Re-enable warnings disabled for GCC 2014-07-28 07:27:05 +01:00
Fabien Caylus ae76945eaf Hide warnings with GCC 2014-07-27 15:16:10 +02:00
James Wilkinson 63005a1d89 Added SCENARIO_METHOD for BDD testing with fixtures. 2014-07-10 10:22:20 +01:00
Phil Nash 28c2e07879 build 52 2014-07-09 19:22:49 +01:00
Phil Nash 76f80a670b More summary formatting tweaks 2014-07-09 19:20:24 +01:00
Phil Nash cab9141eec Green summary bar is darker if not all passed
- and the green part now comes at the end (to emphasise the failures)
2014-07-09 18:24:24 +01:00
Phil Nash d89e74faff Format floats like doubles when printing - but add ‘f’ suffix (a lá #291) 2014-07-09 18:16:40 +01:00
Phil Nash ce56209250 build 51 2014-07-09 07:40:37 +01:00
Phil Nash 23181eeef0 Section no longer relies on copy-elision for correctness
- should address #293
- *may* address #271
2014-07-09 07:39:57 +01:00
Phil Nash a469d9bc0f Made Colour copyable to remove warning 2014-07-09 07:36:12 +01:00
Phil Nash a31f05fe83 Removed C-style casts 2014-07-09 07:35:34 +01:00
Phil Nash 94a1acf766 More tweaks to summary format 2014-07-03 19:06:59 +01:00
Phil Nash 52e1e7414a build 50 2014-07-03 08:11:38 +01:00
Phil Nash 9c1f9a8f9a Added [!mayfail] tag to indicate test case that can fail without failing the suite.
Overhauled the summary report (including the expected failure count)
2014-07-03 08:09:57 +01:00
Phil Nash acdd3b5745 Build 49
- _THROWS fix
- tag aliases
2014-06-30 07:35:36 +01:00
Phil Nash 1d210ebd37 Tag aliases feature 2014-06-30 07:33:17 +01:00
Phil Nash 006aafd982 Some clean-ups for string handling in Objective-C 2014-06-20 18:05:31 +01:00
Phil Nash 11cf45bc41 Fixed regression with -e 2014-06-05 18:11:31 +01:00
Phil Nash ab03668c55 build 48
- big assertion capture refactoring
2014-06-02 07:48:03 +01:00
Phil Nash be9fe76101 Renamed ShouldNegate to FalseTest 2014-05-29 08:00:20 +01:00
Phil Nash 10801c2876 Folded ExpressionResultBuilder into ResultBuilder
(even more SRP violations!)
2014-05-29 07:50:19 +01:00
Phil Nash 9438a03d5b Big assertion capture refactoring.
- moved as much logic out of the macros as possible
- moved most logic into new ResultBuilder class, which wraps ExpressionResultBuilder (may take it over next), subsumes ResultAction and also takes place of ExpressionDecomposer.

This introduces many SRP violations - but all in the name of minimising macro logic!
2014-05-28 18:53:01 +01:00
Phil Nash 7cbf74061b Tweaked rawMemoryToString() along lines of suggestion in #281 2014-05-23 18:41:02 +01:00
Phil Nash 48fac9cf01 build 47 2014-05-20 19:02:37 +01:00
Phil Nash d12c00666a Make TagInfo non-local 2014-05-20 19:02:10 +01:00
Phil Nash 9241e436f9 Build 46
- Fixes some test spec parser issues and some warnings (compiler and analysers)
2014-05-20 18:50:59 +01:00
Phil Nash 5daa22dcc3 Fixed dereferenced null issue 2014-05-20 18:49:28 +01:00
Phil Nash 59d556907d Attempt to prevent analyser warnings about dereferencing null. 2014-05-20 18:41:34 +01:00
Phil Nash 2c9e9ac004 Fixed space separated lists of test specs
- they form an AND expression. They were forming an OR expression due to changes made to fix -f - so that had to be fixed differently
2014-05-20 18:28:19 +01:00
Phil Nash b43d7703e5 Tests hidden with legacy ./ prefix tagged as hidden 2014-05-20 18:11:23 +01:00
Phil Nash fbf3f6f879 Fix case sensitivity when matching tags
(now insensitive again)
Also group case-different tags together when listing
2014-05-20 18:03:54 +01:00
Phil Nash e21d0b29cc Killed a couple more warnings (one for VS2010 and one for Clang) 2014-05-19 19:04:38 +01:00
Phil Nash 3bdc97d8ad Suppressed a load of warnings 2014-05-19 18:57:14 +01:00
Phil Nash ebd4888fe1 build 45
- fixes
2014-05-19 18:22:59 +01:00
Phil Nash e8aa0bb19b Fixed issue with reading test names from file 2014-05-19 18:20:44 +01:00
Phil Nash fcf0deb116 Fixed issue with wildcards at the start of a string 2014-05-19 18:07:53 +01:00
Phil Nash b5d1cfe441 Suppress switch statement warning 2014-05-19 17:57:01 +01:00
Phil Nash ee956bc94e Fixed isHidden regression 2014-05-19 17:50:58 +01:00
Phil Nash 65cc14c44e build 44
- new name/ tag parser (fixes #279)
2014-05-16 18:54:48 +01:00
Phil Nash 9bf43e7875 Refactored last usages of old tag parser and removed all the, now redundant, tag parsing code 2014-05-16 18:52:55 +01:00
Phil Nash b1e7d161b5 Moved catch_test_spec.h to catch_test_spec.hpp 2014-05-16 18:28:58 +01:00
Phil Nash ae75b3774a Switched over to new name/ tag parser 2014-05-16 18:24:07 +01:00
Phil Nash 56b8d3a5f9 Moved new test spec code into appropriate header
- about to remove old test spec code and rewire throughout the codebase!
2014-05-16 07:23:31 +01:00
Phil Nash f8cff10ff6 First cut of new test spec parser code 2014-05-16 06:50:00 +01:00
Phil Nash ad4489043b Unanonymised unions to avoid breaking on compilers that don’t support them
- e.g. GCC 4.3 and 4.4
- fixes #281
2014-05-13 17:48:47 +01:00
Phil Nash 4e044ed4b1 build 43
- removed some pragmas
2014-05-04 09:23:30 +01:00
Phil Nash 5ce900a532 Removed some #pragmas that have been causing problems for now 2014-05-04 09:16:32 +01:00
Phil Nash 5a2df71b41 build 42: “compact” reporter
- thanks to Martin Moene
2014-05-01 19:07:02 +01:00
Phil Nash 4e9484ba30 Adjusted some elements of style in compact_reporter 2014-05-01 19:03:56 +01:00
Phil Nash c02c7003dc Merged Martin Moene’s “compact reporter” 2014-05-01 07:27:57 +01:00
Phil Nash 9f1e054a42 Suppress some more warnings 2014-05-01 07:03:06 +01:00
Phil Nash 174049532e Build 41
- fixes
2014-04-23 18:19:49 +01:00
Phil Nash 1a6f2a0a80 Changed the way noexcept support is handled to (hopefully) fix #275 and #273 2014-04-23 18:19:19 +01:00
Phil Nash f1928b7f24 Include missing <cstring> header
- should fix issue #274
2014-04-23 17:51:30 +01:00
Phil Nash aef6cd5332 build 40
- Fixed endianness when converting numbers to hex strings
- Added option to show invisibles (/t, /n) in printed strings with -i
- moved toString() impls to impl file
- avoid allocations for static strings used in reporter
2014-04-23 07:10:10 +01:00
Phil Nash 328a469c03 Moved tostring impl into catch_tostring.hpp 2014-04-23 07:03:15 +01:00
Phil Nash 97150f27ac Renamed catch_tostring.hpp catch_tostring.h
- in preparation for splitting implementation into catch_tostring.hpp
2014-04-23 06:51:58 +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 f219194199 Replace some static strings with static char*s for leak detection friendliness (h/t #272) 2014-04-22 17:54:29 +01:00
Phil Nash 48153e8e10 Considers endianness when printing raw memory into a string 2014-04-22 08:19:11 +01:00
Phil Nash a020865990 Sections are, once again, eagerly entered.
When the section tracking code was rewritten a while back to simplify and iron out some bugs the order of evaluation was changed so that each new section was skipped on the first run through.
This had unwelcome consequences for some people.
This commit restores the original semantics (while maintaining the simpler, less buggy, new code).
2014-04-21 19:02:38 +01:00
Phil Nash d7e1790347 Merge branch 'master' of https://github.com/gnzlbg/Catch
# By gnzlbg
# Via gnzlbg
* 'master' of https://github.com/gnzlbg/Catch:
  Conditionally removes usage of deprecated features

Conflicts (resolved):
	include/internal/catch_common.h
	include/internal/catch_section.hpp
2014-04-18 08:49:35 +01:00
Phil Nash 9d469b6cb5 build 37 2014-04-18 08:30:31 +01:00
Phil Nash 7303b2b60e Changed branchName to char*, as per #266 2014-04-18 08:28:52 +01:00
Phil Nash 970127e488 Removed some unnecessary core macros 2014-04-16 18:01:31 +01:00
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 c5406a25bf build 35 2014-04-12 19:21:08 +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 af8cd98f20 New version of Clara that fixes operator= issue with ref member (#265) 2014-03-24 18:15:04 +00:00
gnzlbg ce6598599b Conditionally removes usage of deprecated features
-add macros to test for C++ version and features
to catch_compiler_capabilities.hpp
- replaces dynamic exception specifications (deprecated)
with noexcept in C++ Version >= 11
- defines defaulted copy constructor/move constructors/assignment
in C++ Version >= 11 since their implicit generation is deprecated
under some circumstances.
- fixes #259
2014-03-20 14:03:51 +01: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 f9df35b12b Fixed instance of Clara::_ placeholder when using CATCH_CONFIG_RUNNER 2014-03-10 18:02:18 +00:00
Phil Nash dd2810d60a build 30
- with Clara fix for null deref crash
2014-03-07 06:58:33 +00:00
Phil Nash 9abb27676d Fix problem (hopefully) with single source definitions from Clara
- define CLARA_CONFIG_MAIN in the right place
2014-03-06 21:53:34 +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 1f1ee3c63d New version of Clara
- Clara now built with new stitch script (based on generateSingleInclude)
- also fixed python scripts for python 3 (print now a function rather than a keyword)
2014-03-01 10:38:14 +00:00
Phil Nash 1c2fbe146b build 26 2014-02-11 18:12:41 +00:00
Phil Nash 5845ae94aa Added private assignment operator to fix VS2010 issue
- thanks to Kosta (#239)
2014-02-11 18:11:06 +00:00
Phil Nash b15726beba Added #include for <memory> to Clara
- thanks again, Martin
2014-02-11 17:45:15 +00:00
Phil Nash 160b74d6c7 … and <stdexcept> 2014-02-11 17:41:11 +00:00
Phil Nash 633feaa4a6 Added #include <algorithm> to clara.h
- thanks Martin
2014-02-11 17:40:11 +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 b756243935 Fixed some comments 2014-02-10 17:31:31 +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 7eb5acc183 build 25
- fix for #231
2014-01-08 17:17:31 +00:00
Phil Nash 46a1fc7615 Removed unnecessary union name 2014-01-07 17:43:18 +00:00
Phil Nash be890d0c15 build 24 2014-01-07 17:26:59 +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 440a47011f Convert pointers to integrates when printing.
- handles function pointers that way too (otherwise printed as 1 by gcc and clang)
2014-01-04 19:12:05 +00:00
Phil Nash e45e3a139a Clara ignores anything after a lone — (double dash)
- this allows use within an environment that appends additional arguments that Clara will otherwise reject
- generated build 23
2013-12-23 10:24:06 +00:00
Phil Nash 91ef5f7d40 build 22 2013-12-20 19:06:26 +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 f385a0b13d build 21 2013-12-19 18:42:25 +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 eb760f689b Build 20 2013-12-18 08:38:33 +00:00
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 557b3bdbe3 Made SUCCESS variadic too (optional stream) 2013-12-14 23:16:03 +00:00
Phil Nash 2851b4a55a Try again with nullptr compatibility check in GCC 2013-12-14 23:04:06 +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 563429d9a3 Compile in CATCH_CONFIG_CPP11_NULLPTR for some compilers 2013-12-14 14:32:26 +00:00
Phil Nash b4625208d0 Test for FAIL that doesn’t take an argument 2013-12-14 14:30:58 +00:00
Phil Nash 274ed3ea76 Allow FAIL() to be empty 2013-12-12 23:02:31 +00:00
Phil Nash a6d74bd55a Build 17 2013-12-11 08:28:15 +00:00
Phil Nash 0b63e0d868 Fixed warnings for platforms that don’t implement CATCH_BREAK_INTO_DEBUGGER
- as discussed in #229
2013-12-11 08:26:56 +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 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 47a5ad3038 Normalised “hidden” tags 2013-12-04 07:58:39 +00:00
Phil Nash 3649fdf285 Build 15 2013-12-03 18:53:55 +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 8ba6555acd Merge pull request #224 from PetterS/cygwinfix
Fix fileno not always present. fileno(stdout) = 1.
2013-11-26 15:33:37 -08:00
Petter Strandmark c032dfa41c Fix fileno not always present. fileno(stdout) = STDOUT_FILENO.
This was a problem when compiling on Cygwin with gcc 4.8.
2013-11-26 23:20:05 +01:00
Phil Nash 5ecb72b9bb Build 14 2013-11-26 20:57:45 +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 200197f0b2 Merge branch 'master' of github.com:philsquared/Catch 2013-11-19 07:22:24 +00:00
Phil Nash 337dc25ed7 Converted all test case names to "modern" style (freeform text + tags) 2013-11-19 07:21:03 +00:00
Adam Strzelecki d1e5480d95 std::auto_ptr is deprecated in c++11/c++0x
This will use std::unique_ptr on C++11 and remove deprecation warning.
2013-11-17 18:44:35 +01:00
Phil Nash 8d44f2dbb2 build 13 2013-11-13 08:10:45 +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 ecb9432763 Simplified and tidied test case and tag listing 2013-11-12 18:59:34 +00:00
Phil Nash 5320518dbc Build 12 2013-11-09 07:47:09 +00:00
Phil Nash 0712bbb251 Merge pull request #207 from Fraser999/list_tests_issue
List tests issue
2013-11-07 03:11:19 -08:00
Phil Nash c2b0c6fb08 Added missing #include for <vector> 2013-11-07 10:35:59 +00:00
Fraser Hutchison 6253386458 Fixes overflow issue when listing tests. 2013-10-24 02:53:13 +01:00
Phil Nash 93a945cee9 Fixed uninitialised members in Context object 2013-10-23 15:35:07 +01:00
Phil Nash 380f98ed1f Regenerated single include 2013-10-17 22:45:21 +01:00
Phil Nash 39ef46a02e Truncate excessively long messages rather than asserting 2013-10-17 18:02:38 +01:00
Phil Nash 0b097c26b6 Fix wrapping width when listing tests
- addresses #201
2013-10-02 08:07:52 +01:00
Phil Nash b4af9b9620 Merge commit '22ded1f2bb3caf96d90c2f1981ede29d3aeb1c74' 2013-09-25 18:48:53 +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 358b7b29e1 Eliminate a warning in the latest clang with Xcode 2013-09-24 07:41:18 +01:00
Andy Sawyer d6f23a9a36 catch_tostring : moved defintion of rangeToString
Detail::rangeToString is now defined after the various toString
overloads. This results in them being accessible with rangeToString is
instantiated (in this case, by StringMaker<vector>). This (sort-of)
fixes the problem where contained types are toString'd incorrectly.

Consider:
  std::vector<std::string> v { "abc" };

Before:
  Catch::toString( v ) == "{ abc }"
After:
  Catch::toString( v ) == "{ "abc" }"

(note the extra pair of quotes around the "abc" - these are added by
Catch::toString( std::string ) which is now called by rangeToString)
2013-09-21 18:45:42 +01:00
Andy Sawyer 0dbcf218c3 Add allocator support to StringMaker<vector>
- also extracted out 'rangeToString', in an attempt to make it easier
   to add support for other containers
2013-09-17 22:22:47 +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 f41fad7e20 Don't report durations if not reporter anything else 2013-08-16 18:57:41 +01:00
Phil Nash 357d654641 Added missing assert include 2013-08-16 08:01:16 +01:00
Phil Nash 3faa412855 Removed basic reporter 2013-08-15 19:09:07 +01:00
Phil Nash aa7123b696 Build 7
- New Junit reporter
- New Timer class
2013-08-15 19:01:00 +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 e8cf726a23 Refactored missing assertions handling 2013-07-26 19:26:08 +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 801672b962 Fix MSVC warning 2013-07-25 08:18:09 +01:00
Phil Nash 8a52a39fdc Build 6
- fixes infinite loop bug (#185 and #166)
2013-07-25 08:12:03 +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 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 8fde14313b Session vars are public 2013-06-07 08:04:05 +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 a7e657fd9b Refactored new Session class to make it more friendly for custom client code 2013-06-06 18:51:24 +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