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
14796814b8
Approved new test case
2014-05-23 18:55:05 +01:00
Phil Nash
7cbf74061b
Tweaked rawMemoryToString() along lines of suggestion in #281
2014-05-23 18:41:02 +01:00
Phil Nash
a2d8f774d2
Approved new test output
2014-05-20 18:28:48 +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
baf181f15d
Minor fixes to a couple of test names
2014-05-20 18:11:43 +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
7139035906
Updated approvals after adding extra tests
2014-05-19 18:21:01 +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
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
766491a7c4
Approved all the changes following name/ tag parser rework
2014-05-16 18:31:15 +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
72e67693d4
Small test spec parser refactoring
2014-05-16 07:07:28 +01:00
Phil Nash
f8cff10ff6
First cut of new test spec parser code
2014-05-16 06:50:00 +01:00
Phil Nash
5a2df71b41
build 42: “compact” reporter
...
- thanks to Martin Moene
2014-05-01 19:07:02 +01:00
Phil Nash
c02c7003dc
Merged Martin Moene’s “compact reporter”
2014-05-01 07:27:57 +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
31caba4f73
Added test for invisibles
2014-04-23 07:07:27 +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
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
cfc37b5fe9
Merge branch 'master' of github.com:philsquared/Catch
...
# By Alexander Manenko
# Via Alexander Manenko (1) and Phil Nash (1)
* 'master' of github.com:philsquared/Catch:
Fix build issue with TchRunnerMainView in XCode 5
2014-04-18 08:28:13 +01:00
Phil Nash
41d3f2b88b
Merge pull request #269 from alexander-manenko/master
...
Fix build issue with TchRunnerMainView in XCode 5
2014-04-18 08:17:37 +01:00
Phil Nash
6c4a7cdd64
Renamed XCode4 folder to just XCode
...
(It’s been Xcode 5 for a long time, now, anyway)
2014-04-17 07:38:10 +01:00
Phil Nash
87891cf38b
Updated approval tests baselines
2014-04-16 18:00:55 +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
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