Commit Graph

1328 Commits

Author SHA1 Message Date
Phil Nash
6f2343bf64 Sections use vector instead of a map
Uses brute-force search, but only ever for small vectors
2012-11-29 09:17:08 +00:00
Phil Nash
c4ba6757d9 Added ReporterPreferences and started some SectionInfo refactoring 2012-11-29 09: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
f9d92634f5 First cut of using new streaming reporter interface - using an adapter to map back to the legacy interface
Doesn't do sections or the query functions (e.g. shouldRedirectStdOut)
2012-11-25 21:43:36 +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
2846367109 build 6 2012-11-21 18:06:13 +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
5d248c98bf Moved code that detects absence of assertions closer to where end of test case is reported (ready for merging).
Also now considers info macros when warning (i.e. an empty test case with an INFO() will not warn).
2012-11-21 08:19:23 +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
d0cc33f284 Unchecked exceptions don't report previous assertions message (only its line number) 2012-11-17 17:22:37 +00:00
Phil Nash
3e2e318eeb Build 4 2012-11-17 10:49:24 +00:00
Phil Nash
f825d67d71 Tweaked bitfield tests to avoid warnings 2012-11-17 10:47:17 +00:00
Phil Nash
08142bfdb6 Fixes const int error seen on some compilers (see #136)
Added a new test to try to highlight issue.
2012-11-16 21:03:59 +00:00
Wichert Akkerman
fec10533e7 Fix expression compile errors. 2012-11-16 10:47:33 +01: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
7673a308d9 Added versioning 2012-11-15 22:15:41 +00:00
Phil Nash
ceeebfda49 Fixed merge hiccup 2012-11-13 22:03:50 +00:00
Phil Nash
42d1b45386 Squashed commit of the following:
commit 70c5ef9eed
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 13 21:46:01 2012 +0000

    Regen single include

commit 4ea535e505
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 13 09:56:30 2012 +0000

    Tidied up result enums

commit 7717c29072
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 13 09:45:29 2012 +0000

    Implemented CHECK_NOFAIL

    Previous commit missed some files

commit d539da9030
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 13 09:44:52 2012 +0000

    Implemented CHECK_NO_FAIL

commit af1a321860
Author: Phil Nash <github@philnash.me>
Date:   Sat Nov 10 18:46:39 2012 +0000

    Regen single include

commit f54ac5625e
Author: Phil Nash <github@philnash.me>
Date:   Sat Nov 10 18:44:12 2012 +0000

    New (combined) baselines

commit defca58566
Author: Phil Nash <github@philnash.me>
Date:   Sat Nov 10 18:43:23 2012 +0000

    negate() -> endExpression(), takes ResultDisposition

commit b2ef998825
Author: Phil Nash <github@philnash.me>
Date:   Sat Nov 10 10:35:09 2012 +0000

    Changed shouldNegate boolean to use part of ResultDisposition enum

commit 1af13dba97
Author: Phil Nash <github@philnash.me>
Date:   Sat Nov 10 10:20:08 2012 +0000

    Changed StopOnFailure boolean to an enum

commit a1dc7e312c
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 6 19:34:35 2012 +0000

    Regen single include

commit 20e59ce9d1
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 6 19:34:10 2012 +0000

    Added tags docs

commit b5b1b1e430
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 6 19:13:25 2012 +0000

    Some expression/ evaluation clean-up

commit ec5956f471
Author: Phil Nash <github@philnash.me>
Date:   Tue Nov 6 07:52:28 2012 +0000

    Fix for #134

    The INTERNAL_CATCH_MSG macro, which is used by INFO, WARN and FAIL places its lines in a do…while block so it can be used after an if statement with no block

commit 88b70828f2
Author: Phil Nash <github@philnash.me>
Date:   Sun Nov 4 21:39:38 2012 +0000

    Regen single include

commit b323fc7e6c
Author: Phil Nash <github@philnash.me>
Date:   Sun Nov 4 21:39:16 2012 +0000

    Fixed line/no regression for SECTIONs

    Unexpected exceptions within a section now get the SECTION's line no. again (instead of TEST_CASE line/no)

commit 78fba28c4b
Author: Phil Nash <github@philnash.me>
Date:   Sun Nov 4 21:11:59 2012 +0000

    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.

commit 81cb69ef18
Author: Phil Nash <github@philnash.me>
Date:   Sun Nov 4 21:09:22 2012 +0000

    AssertionInfo captures more info (for test cases and sections)

commit a4e088c999
Author: Phil Nash <github@philnash.me>
Date:   Fri Nov 2 08:29:03 2012 +0000

    Removed __FUNCTION__ from SourceLineInfo

commit 2a1e8bfc6e
Author: Phil Nash <github@philnash.me>
Date:   Thu Nov 1 08:16:15 2012 +0000

    Updated colour comments

commit f0f407fc3e
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 31 18:28:21 2012 +0000

    Manually applied merge #133 from Master

commit 355b95fda1
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 31 18:04:22 2012 +0000

    Cleaned up ANSI colour code impl a bit

commit 778f9c4fc7
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 30 09:09:30 2012 +0000

    Removed "no-" from Wno-global-constructors when disabling

commit 5efa4bcb8a
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 20:49:22 2012 +0000

    Regenerated single_include

commit 108f1937d8
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 20:46:45 2012 +0000

    Added terminal colour codes for POSIX

    With thanks to Adam Strzelecki

commit 8f4cc541d5
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 19:55:34 2012 +0000

    Added regression test baselines

commit 2e203a1834
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 19:55:13 2012 +0000

    Fixed remaining reporting regressions

commit 134e45b3ad
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 20:57:21 2012 +0000

    Fixed #132

commit 2f92db9898
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 12:15:34 2012 +0000

    Updated the readme specifically for the Integration branch

commit 82acc2ca05
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 12:07:17 2012 +0000

    Regenerated single include

commit fe1d7c1d08
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 10:27:44 2012 +0000

    Small fixes and tweaks

commit 355b5e546d
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 26 09:05:36 2012 +0100

    Some tidy-up

commit f847186ebb
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 26 08:45:23 2012 +0100

    AssertionResultBuilder -> ExpressionResultBuilder

commit 8cca2f1369
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 24 22:09:01 2012 +0100

    ExpressionBuilder ->ExpressionDecomposer
    Expression -> ExpressionLhs

commit e04e74f896
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 24 21:59:47 2012 +0100

    More AssertionResult refactoring

commit 1dd56d4d2b
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 19 08:01:34 2012 +0100

    AssertionResultBuilder can be constructed from result type

commit f2d5f1b3e4
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 19 08:01:05 2012 +0100

    Expression has its own result builder - not passed in from expression builder

commit e3b111a39a
Author: Phil Nash <github@philnash.me>
Date:   Thu Oct 18 22:59:16 2012 +0100

    streamlined acceptResult

commit 3ad13256e1
Author: Phil Nash <github@philnash.me>
Date:   Thu Oct 18 08:39:44 2012 +0100

    Refactored assertion builder stuff out of expression builder

commit c96f9330a0
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 17 08:14:22 2012 +0100

    Collect assertion info up front

commit a5fa78284d
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:33:13 2012 +0100

    ResultData -> AssertionResultData

commit c597a893fa
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:31:05 2012 +0100

    ResultInfo -> AssertionResult filenames and variables

commit d16955f63a
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:27:21 2012 +0100

    Renamed ResultInfo -> AssertionResult

commit 175da3ef64
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 12 18:39:22 2012 +0100

    regen test 3
2012-11-13 21:59:50 +00:00
Phil Nash
4ea535e505 Tidied up result enums 2012-11-13 09:56:30 +00:00
Phil Nash
d539da9030 Implemented CHECK_NO_FAIL 2012-11-13 09:44:52 +00:00
Phil Nash
defca58566 negate() -> endExpression(), takes ResultDisposition 2012-11-10 18:43:23 +00:00
Phil Nash
b2ef998825 Changed shouldNegate boolean to use part of ResultDisposition enum 2012-11-10 10:35:09 +00:00
Phil Nash
1af13dba97 Changed StopOnFailure boolean to an enum 2012-11-10 10:20:08 +00:00
Phil Nash
20e59ce9d1 Added tags docs 2012-11-06 19:34:10 +00:00
Phil Nash
b5b1b1e430 Some expression/ evaluation clean-up 2012-11-06 19:13:25 +00:00
Phil Nash
ec5956f471 Fix for #134
The INTERNAL_CATCH_MSG macro, which is used by INFO, WARN and FAIL places its lines in a do…while block so it can be used after an if statement with no block
2012-11-06 07:52:28 +00:00
Phil Nash
b323fc7e6c Fixed line/no regression for SECTIONs
Unexpected exceptions within a section now get the SECTION's line no. again (instead of TEST_CASE line/no)
2012-11-04 21:39:16 +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
81cb69ef18 AssertionInfo captures more info (for test cases and sections) 2012-11-04 21:09:22 +00:00
Phil Nash
a4e088c999 Removed __FUNCTION__ from SourceLineInfo 2012-11-02 08:29:03 +00:00
Phil Nash
ce612bf656 Squashed commit of the following:
commit 2a1e8bfc6e
Author: Phil Nash <github@philnash.me>
Date:   Thu Nov 1 08:16:15 2012 +0000

    Updated colour comments

commit f0f407fc3e
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 31 18:28:21 2012 +0000

    Manually applied merge #133 from Master

commit 355b95fda1
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 31 18:04:22 2012 +0000

    Cleaned up ANSI colour code impl a bit

commit 778f9c4fc7
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 30 09:09:30 2012 +0000

    Removed "no-" from Wno-global-constructors when disabling

commit 5efa4bcb8a
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 20:49:22 2012 +0000

    Regenerated single_include

commit 108f1937d8
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 20:46:45 2012 +0000

    Added terminal colour codes for POSIX

    With thanks to Adam Strzelecki

commit 8f4cc541d5
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 19:55:34 2012 +0000

    Added regression test baselines

commit 2e203a1834
Author: Phil Nash <github@philnash.me>
Date:   Mon Oct 29 19:55:13 2012 +0000

    Fixed remaining reporting regressions

commit 134e45b3ad
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 20:57:21 2012 +0000

    Fixed #132

commit 2f92db9898
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 12:15:34 2012 +0000

    Updated the readme specifically for the Integration branch

commit 82acc2ca05
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 12:07:17 2012 +0000

    Regenerated single include

commit fe1d7c1d08
Author: Phil Nash <github@philnash.me>
Date:   Sun Oct 28 10:27:44 2012 +0000

    Small fixes and tweaks

commit 355b5e546d
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 26 09:05:36 2012 +0100

    Some tidy-up

commit f847186ebb
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 26 08:45:23 2012 +0100

    AssertionResultBuilder -> ExpressionResultBuilder

commit 8cca2f1369
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 24 22:09:01 2012 +0100

    ExpressionBuilder ->ExpressionDecomposer
    Expression -> ExpressionLhs

commit e04e74f896
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 24 21:59:47 2012 +0100

    More AssertionResult refactoring

commit 1dd56d4d2b
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 19 08:01:34 2012 +0100

    AssertionResultBuilder can be constructed from result type

commit f2d5f1b3e4
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 19 08:01:05 2012 +0100

    Expression has its own result builder - not passed in from expression builder

commit e3b111a39a
Author: Phil Nash <github@philnash.me>
Date:   Thu Oct 18 22:59:16 2012 +0100

    streamlined acceptResult

commit 3ad13256e1
Author: Phil Nash <github@philnash.me>
Date:   Thu Oct 18 08:39:44 2012 +0100

    Refactored assertion builder stuff out of expression builder

commit c96f9330a0
Author: Phil Nash <github@philnash.me>
Date:   Wed Oct 17 08:14:22 2012 +0100

    Collect assertion info up front

commit a5fa78284d
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:33:13 2012 +0100

    ResultData -> AssertionResultData

commit c597a893fa
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:31:05 2012 +0100

    ResultInfo -> AssertionResult filenames and variables

commit d16955f63a
Author: Phil Nash <github@philnash.me>
Date:   Tue Oct 16 08:27:21 2012 +0100

    Renamed ResultInfo -> AssertionResult

commit 175da3ef64
Author: Phil Nash <github@philnash.me>
Date:   Fri Oct 12 18:39:22 2012 +0100

    regen test 3
2012-11-01 08:27:09 +00:00
Phil Nash
2a1e8bfc6e Updated colour comments 2012-11-01 08:16:15 +00:00
Phil Nash
f0f407fc3e Manually applied merge #133 from Master 2012-10-31 18:28:21 +00:00
Vadim Zeitlin
b7f7054828 Fix harmless but annoying MSVC warnings.
Suppress

catch.hpp(1760) : warning C4512: 'Catch::TagExtracter' : assignment operator could not be generated
catch.hpp(1864) : warning C4512: 'Catch::TagExpressionParser' : assignment operator could not be generated

warnings given by MSVC 9 (and probably other version too) compiler with /W4 switch.

The warnings are given because the compiler can't synthesize the assignment
operators for the classes with members of reference type, so simply explicitly
declare (without defining) these operators ourselves to suppress them.
2012-10-31 19:17:31 +01:00
Phil Nash
355b95fda1 Cleaned up ANSI colour code impl a bit 2012-10-31 18:04:22 +00:00
Phil Nash
108f1937d8 Added terminal colour codes for POSIX
With thanks to Adam Strzelecki
2012-10-29 20:46:45 +00:00
Phil Nash
2e203a1834 Fixed remaining reporting regressions 2012-10-29 19:55:13 +00:00
Phil Nash
134e45b3ad Fixed #132 2012-10-28 20:57:21 +00:00
Phil Nash
fe1d7c1d08 Small fixes and tweaks 2012-10-28 10:27:44 +00:00
Phil Nash
355b5e546d Some tidy-up 2012-10-26 09:05:36 +01:00
Phil Nash
f847186ebb AssertionResultBuilder -> ExpressionResultBuilder 2012-10-26 08:45:23 +01:00
Phil Nash
8cca2f1369 ExpressionBuilder ->ExpressionDecomposer
Expression -> ExpressionLhs
2012-10-24 22:09:01 +01:00
Phil Nash
e04e74f896 More AssertionResult refactoring 2012-10-24 21:59:47 +01:00
Phil Nash
1dd56d4d2b AssertionResultBuilder can be constructed from result type 2012-10-19 08:01:34 +01:00
Phil Nash
f2d5f1b3e4 Expression has its own result builder - not passed in from expression builder 2012-10-19 08:01:05 +01:00
Phil Nash
e3b111a39a streamlined acceptResult 2012-10-18 22:59:16 +01:00
Phil Nash
3ad13256e1 Refactored assertion builder stuff out of expression builder 2012-10-18 08:39:44 +01:00
Phil Nash
c96f9330a0 Collect assertion info up front 2012-10-17 08:14:22 +01:00
Phil Nash
a5fa78284d ResultData -> AssertionResultData 2012-10-16 08:33:13 +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
9902ac9f1a Cleaned up ResultInfoBuilder a bit 2012-10-09 20:58:33 +01:00
Phil Nash
71edf8b727 isNot -> isFalse 2012-10-09 11:59:11 +01:00
Phil Nash
6730512afa Refactoring ResultData out of ResultInfo/ Builder pt2 2012-10-09 11:48:55 +01:00
Phil Nash
86e1915099 Refactoring ResultData out of ResultInfo/ Builder pt1 2012-10-05 18:35:01 +01:00
Phil Nash
36d0da0194 Started refactoring ResultInfo/Builder 2012-10-04 08:09:09 +01:00
Phil Nash
4104fb735e Random bits of clean-up 2012-10-03 18:12:57 +01:00
Phil Nash
e82b564c3a Merge branch 'master' of github.com:philsquared/Catch 2012-09-29 20:35:14 +01:00
Phil Nash
4b93fb81b5 Added some surrogate cpps
(and fixed up missing includes they uncovered)
2012-09-28 19:21:14 +01: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
67ec8709ea First cut of command line support for tags 2012-09-26 18:38:26 +01:00
Phil Nash
c4160e9ef8 Fixed alternate stream bugs 2012-09-26 18:36:58 +01:00
Phil Nash
60fb60f5e0 Updated help help 2012-09-25 07:43:37 +01:00
Phil Nash
ec2fccf6b8 Fixed SCOPED_INFO (#123) 2012-09-24 08:28:23 +01:00
Phil Nash
85c0e3d42b Tag command line parsing implementation 2012-09-21 07:48:03 +01:00
Phil Nash
9d8570ff80 Removed spurious files 2012-09-20 08:20:06 +01:00
Phil Nash
61964881c7 Added copy ctor to ReporterConfig to get rid of warnings 2012-09-20 08:17:52 +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
fc1baac7f5 First cut of tags support 2012-09-15 17:53:27 +01:00
Phil Nash
dea756f699 Capture test case hidden status in member variable 2012-09-12 18:40:24 +01:00
Phil Nash
f7418eb2dd Completed embedded docs 2012-09-09 11:44:30 +01:00
Phil Nash
e2d215e9c0 Added internal documentation for some options 2012-09-07 17:52:35 +01:00
Phil Nash
c682a163b1 Restored quick way to add test programatically 2012-09-07 17:52:15 +01:00
Phil Nash
deb3ced619 Ptr op= takes const ref (fixes: #115) 2012-08-31 18:50:46 +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
78c92e68aa Got rid of some warnings 2012-08-27 21:48:15 +01:00
Phil Nash
ecf934b045 Option objects now enforce min/ max args generically 2012-08-27 21:42:55 +01:00
Phil Nash
e7db40034c Generate help from options objects 2012-08-27 12:19:07 +01:00
Phil Nash
eb775aa7af Refactored command line parsers into polymorphic classes 2012-08-25 21:26:05 +01:00
Phil Nash
95ae50ad3d Test for ~ and removed debug print 2012-08-24 19:01:35 +01:00
Phil Nash
f82861fb0a Changed shorthand for exclude: to ~ 2012-08-24 18:57:49 +01:00
Phil Nash
e571e6f4a0 Can specify tests without -t. ex: is shorthand for exclude: 2012-08-24 18:54:56 +01:00
Phil Nash
4c97fc5619 WIldcards at both ends 2012-08-24 08:23:50 +01:00
Phil Nash
56d5c42912 First cut of new filtering mechanism 2012-08-23 20:08:50 +01:00
Phil Nash
c2675b5d49 Added copy actor and operator = back to TestCaseInfo 2012-08-23 08:38:27 +01:00
Phil Nash
cda21492a8 Conditionally compile clang pragmas 2012-08-16 18:47:41 +01:00
Phil Nash
c1dbc9c22b Separated getting test cases to run from running them 2012-08-15 19:12:51 +01:00
Phil Nash
d0a5461add Moved TestSpec into its own file 2012-08-14 19:35:30 +01:00
Phil Nash
ddfe963623 Split imll from TestCaseInfo 2012-08-14 19:30:30 +01:00
Phil Nash
9c6ce97f01 Made ITestCase a shared object 2012-08-14 08:38:22 +01:00
Phil Nash
a67d833091 More things using ConfigData 2012-08-13 19:27:03 +01:00
Phil Nash
a695eb9006 Builds almost completely cleanly with -WEverything in LLVM 2012-08-13 07:46:10 +01:00
Phil Nash
3b80af7a06 Recreated the single include test project and got it working after impl refactorings 2012-08-09 07:47:30 +01:00
Phil Nash
c436a4dac1 Separated resultinfo_builder from impl 2012-08-08 08:58:28 +01:00
Phil Nash
ffe986d4ee Split result info from impl 2012-08-08 08:50:38 +01:00
Phil Nash
fb386f458d Moved context object entirely into impl file 2012-08-08 08:33:54 +01:00
Phil Nash
0477465f8d Refactored Impls 2012-08-07 08:18:48 +01:00
Phil Nash
58a26da31e Refactored impls 2012-08-07 08:18:33 +01:00
Phil Nash
da0ae952fc Renamed static registries -> registry hub 2012-08-07 07:58:34 +01:00
Phil Nash
1091ca81e6 First cut of StaticRegistries - separate from Context 2012-08-06 20:16:53 +01:00
Phil Nash
5234b15ff4 Fixed quote balancing issue in reporter error 2012-08-06 08:33:15 +01:00
Phil Nash
0dc9e43c02 Fixed toString for NSString* in Xcode 4.4 2012-08-01 08:17:07 +01:00
Phil Nash
61756974d0 Catches incorrect reporter name as per #107 2012-07-28 20:37:07 +01:00
Phil Nash
b084562b3b Improved error handling for --abort as per #108 2012-07-28 20:22:40 +01:00
Phil Nash
d2553cdc64 Made ReportConfig a value type 2012-07-20 19:07:42 +01:00
Phil Nash
46bcd4b2b7 Added ability to specify if macros should be prefixed with CATCH_ 2012-07-20 18:43:48 +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
8fbd8e0f9e Moved use of reporter into runner (our of Main, directly) 2012-07-16 08:58:28 +01:00
Phil Nash
02006d85d7 Disabled use of __FUNCTION__ for now 2012-07-05 23:12:22 +01:00
Phil Nash
abf271672f Added NotImplementedException 2012-07-05 18:37:58 +01:00
Phil Nash
4c73aa5a0e Factored ConfigData out of data 2012-06-08 08:22:56 +01:00
Phil Nash
78372d09d4 Added toString overload for chars
(and, by extension, Obj-C's BOOL)
2012-06-06 08:06:40 +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
f3dd0938ff Changed a remaining Hub to Context 2012-06-05 10:13:52 +01:00
Phil Nash
535edcb73b changed remaining cmd line checks to cmd.raiseError 2012-06-03 19:03:17 +01:00
Phil Nash
8d02b9306d Changed --cutoff to --abort 2012-06-02 23:26:32 +01:00
Phil Nash
6d1c11381e Fixed some signed/ unsigned warnings 2012-06-02 23:08:07 +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
06e959be3e Fixed used of cleaned-up context by runner's destructor
This was causing a segfault for some
2012-05-25 08:52:05 +01:00
Phil Nash
eb22e212c0 Merge pull request #88 from klmr/master
Warning "unused parameter" silenced
2012-05-25 00:47:22 -07:00
Phil Nash
2ffb372290 Added evaluator overloads for case when comparing pointers against NULLs that decay to ints 2012-05-24 18:41:14 +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
1c98fc98ef Added Equals matcher for strings 2012-05-24 08:27:50 +01:00
Phil Nash
be838671ab Removed special handling for pointer comparisons
These all seem to be handled by the general case now
2012-05-24 08:27:09 +01:00
Konrad Rudolph
84434be949 Silence "unused parameter" warning. 2012-05-23 11:22:49 +01:00
Phil Nash
1787da54a7 Reinstated #include that broke single include 2012-05-22 22:21:17 +01:00
Phil Nash
ab4b36862d Added a delta method to Totals that tracks new passed/ failures
This fixes issue with test group results
2012-05-22 08:56:11 +01:00
Phil Nash
9fa9d4279c Removed "singleton" method from context
There is now a global "currentContext" - but Context itself is not aware of it
2012-05-22 08:55:19 +01:00
Phil Nash
61319a9bc1 Merge branch 'master' of github.com:philsquared/Catch 2012-05-21 21:52:00 +01:00
Phil Nash
35b31fa78a Added support for Objective-C exceptions 2012-05-21 21:51:16 +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
Graham Lee
8cfe821e2b Fix a "comparison between signed and unsigned" problem. 2012-05-21 18:11:55 +02:00
Phil Nash
44fbbb07f0 Final reformatting 2012-05-16 15:07:11 +01:00
Phil Nash
0afa09f7c1 Reformatting 2012-05-16 14:53:59 +01:00
Phil Nash
6cd2ac7544 More reformatting 2012-05-16 08:02:20 +01:00
Phil Nash
c67a7eef2b Moar reformatting 2012-05-15 23:58:23 +01:00
Phil Nash
d0be9ed5d9 More reformatting 2012-05-15 08:02:36 +01:00
Phil Nash
2efc1146bf Reformatting 2012-05-15 07:42:26 +01:00
Phil Nash
6acb36a996 Renamed ResultBuilder -> ExpressionBuilder 2012-05-11 19:22:28 +01:00
Phil Nash
7a0cadc342 Moved ResultBuilder out into its own file 2012-05-11 19:15:54 +01:00
Phil Nash
8d69208a58 Fixed some warnings
As referenced in GitHub issue #83
2012-05-11 19:05:53 +01:00
Phil Nash
15140eacd7 Fixed missing #include
From GitHub issue #77
2012-05-11 18:55:19 +01:00
Phil Nash
e92dd85825 include exception registry interfaces 2012-05-11 08:16:39 +01:00
Phil Nash
c9ba82b503 Reformatted expression 2012-05-11 08:16:12 +01:00
Phil Nash
a6855f7eab Move expression classes into own file 2012-05-11 08:03:05 +01:00
Phil Nash
d10d2d3485 More reformatting 2012-05-10 21:46:46 +01:00
Phil Nash
d53573c95a Merge pull request #81 from colonelsammy/master
Changes for MINGW32 debugger as requested
2012-05-10 13:44:55 -07:00
Malcolm Noyes
9e17c807bc Add support for MINGW32 debugger 2012-05-10 21:29:50 +01:00
Phil Nash
d1beb539e8 Refactored main() a bit 2012-05-10 08:17:06 +01:00
Phil Nash
b84444c501 Obj-C updates 2012-05-10 08:16:30 +01:00
Phil Nash
5ec53b2788 renamed hub -> context
(also did some reformatting)
2012-05-10 07:58:48 +01:00
Phil Nash
e0dd4a5469 Sanitised some comments 2012-05-09 19:37:14 +01:00
Phil Nash
f8e1c1ec45 Change the names of the generated functions to aid debugging 2012-05-09 18:59:26 +01:00
Phil Nash
d06dcedfdc Some more reformatting.
Also fixed some warnings
2012-05-09 08:17:51 +01:00
Phil Nash
e83f839741 Renamed MutableResultInfo to ResultInfoBuilder 2012-05-08 19:32:18 +01:00
Phil Nash
b5d367206b Factored MutableResultInfo into its own file 2012-05-08 19:29:51 +01:00
Phil Nash
5d1c8f2c6d Replaced all file/ line pairings with SourceLineInfo 2012-05-08 19:16:18 +01:00
Phil Nash
81a122e66a Factored toString overloads into their own file 2012-05-08 08:10:49 +01:00
Phil Nash
40b161adea Some reformating 2012-05-08 07:59:54 +01:00
Phil Nash
e1cb8f25f2 Fix for comparing (const) char* to NULL 2012-05-07 19:45:55 +01:00
Phil Nash
a201f715a8 Split long failure expressions over multiple lines at the operator 2012-05-07 19:12:43 +01:00
Phil Nash
49e6d536e1 Clean-up and regenerated single include 2012-05-05 19:35:35 +01:00
Phil Nash
a976c07b8d Fixed section ordering issue
If a branch section completes without running any inner sections it will no run subsequent sections (until the next isolated run).
2012-05-05 19:32:52 +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
83a66a6255 Removed redundant const
(also fixed test counts)
2012-04-28 12:39:15 +01:00
Phil Nash
861a1e79cf Conditionally compile __unsafe_unretained
Addresses, and hopefully fixes, issue #77.
2012-04-28 12:29:52 +01:00
Jardel Weyrich
11dca66336 Fix missing parameter for comparisons between long and unsigned X. 2012-04-27 14:42:40 -03:00
Phil Nash
53c990a7e1 ARC support for Object-C projects 2012-03-17 18:20:06 +00:00
Phil Nash
db837a157f Added Equals matcher for NSString 2012-03-14 20:04:50 +00:00
Phil Nash
966f5dbff2 Added initial built-in matchers for NSString (ObjC) 2012-03-04 21:18:46 +00:00
Phil Nash
a6a40b3ba9 Added a handful of "built-in" matchers 2012-03-04 20:10:36 +00:00
Phil Nash
eca5637c58 First cut of Matcher support 2012-03-04 11:14:21 +00:00
Phil Nash
5ff4ab0a76 Suppress warning about constant conditional 2012-02-29 08:47:18 +00:00
Phil Nash
f52bd35e2f made CHECK/ REQUIRE into block statements
Placed the contents of the macros into do{…}while(0) so they can be used as statements (e.g. after an if() with no braces).
Also means they now require the closing ;
2012-02-29 08:35:41 +00:00
Phil Nash
af8d0b3955 Fixed trim() for single char strings (github #75) 2012-02-28 20:04:25 +00:00
Phil Nash
97668c76f1 Merge branch 'master' of github.com:philsquared/Catch 2012-02-28 08:38:17 +00:00
Phil Nash
17cd7f1cca Merge pull request #68 from crown-hill/master
Fix CATCH Issue #61, Assembler Error on iOS/ARM
2012-02-28 00:36:30 -08:00
Phil Nash
e1f1c6ca7e Fixed iOS test runner after reporter changes 2012-02-27 19:03:54 +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
9bbaeba3ae Refactored internal interfaces to use Totals instead of success/ fail 2012-02-23 18:51:21 +00:00
Phil Nash
8d93949b19 Used Counts class in IResultCapture interface 2012-02-23 08:57:51 +00:00
Phil Nash
5ddf794fbc Added Totals class and started using it 2012-02-23 08:49:52 +00:00
Phil Nash
0dd3c57221 Fix for GitHub issue #71
Fixed memory leak in exception translator registry
2012-02-18 19:14:09 +00:00
Phil Nash
dd5b9c2ae5 Added clean-up
Clean-up statics at the end of main to avoid added noise when looking for leaks
2012-02-18 09:58:30 +00:00
Phil Nash
333e6e6254 Improved exception reporting
Refactored exception handling (handle more in the translator)
and report exceptions in CHECKs
2012-02-17 19:50:59 +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
0b09d1c089 Fixed GitHub Issue #70
Interleave XML entities are now encoded correctly
2012-02-10 18:58:06 +00:00
Phil Nash
a162e22fa3 Added CHECKED_IF and CHECKED_ELSE 2012-02-10 08:30:13 +00:00
Phil Nash
6abf702895 OC project for Xcode 4 2012-02-10 08:28:37 +00:00
Phil Nash
3fd7dc0218 Prevent duplicate test names from being registered
If a test case with the same name as an already registered test case is registered an error is logged to cerr and the program exits (with error level 1)
2012-02-09 08:34:01 +00:00
herringbanger@gmail.com
aa648bd690 Fix linker error in catch_debugger.hpp on iOS on ARM that occurs trying to use assembly for Intel because CATCH_PLATFORM_MAC is defined.
Define CATCH_PLATFORM_MAC using #if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) instead of #if defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__).

Add new CATCH_PLATFORM_IPHONE defined using #elif  defined(__IPHONE_OS_VERSION_MIN_REQUIRED) for future use. The BreakIntoDebugger and isDebuggerActive functions remain without implementations for iOS.
2012-01-14 11:12:58 -08:00
Phil Nash
d207cecade Fix for GitHub issue #56
TEST_CASE_METHOD's put the generated class into the anonymous namespace
2011-12-28 19:55:11 +00:00
Phil Nash
7c94aef660 Fix for GitHub Issue #66
SECTIONs distinguished by name as well as file/ line
2011-12-28 10:33:54 +00:00
Phil Nash
b13ad46532 stdout retained for all sections
Fixed issue where stdout was dropped between sections
2011-12-28 10:23:32 +00:00
Phil Nash
458e5eec16 Xcode 4, warnings and MinGW
Added separate Xcode 4 project.
Fixed some warnings.
Fixed OutputDebugString decl for MinGW
2011-12-27 10:59:41 +00:00
Phil Nash
f7e2777665 Github issue #51
Fixed &quot; entity referece
2011-09-30 08:04:54 +01:00
Phil Nash
4094e7fe3d Merge branch 'master' of github.com:philsquared/Catch 2011-09-29 18:42:32 +01:00
Phil Nash
a713ce0264 Simplified streamable detection 2011-09-29 09:01:59 +01:00
Phil Nash
0afab69c7d Supress more warnings 2011-09-29 08:58:40 +01:00
Wichert Akkerman
6d18d4b189 Fix compiler warnings
Fix base classes without virtual destructors and missing initialisors.
2011-09-23 10:03:52 +02:00
Phil Nash
08a1b51987 Hold values by value and references by reference 2011-09-19 18:19:13 +01:00
Phil Nash
4d0a8d96e6 Fixed issue with evaluating static bools 2011-08-09 08:18:27 +01:00
Phil Nash
3723b527f5 Some fixes for string literals on LHS 2011-07-15 08:07:44 +01:00
Phil Nash
7cfe6eb078 Only use __debugbreak from MSVC (rather than any compiler on Windows) 2011-07-04 09:09:03 +01:00
Phil Nash
1adebefb50 Fixed tests with string literal on lhs 2011-06-29 19:22:56 +01:00
Phil Nash
eb2964e4ae Disambiguated some locally scoped names 2011-06-23 08:13:25 +01:00
Phil Nash
d258e49f7c (Hopefully) fixed infinite loop in sections (GitHub #39). 2011-06-21 08:43:48 +01:00
Phil Nash
2fa72a47cd Added ability to build custom Approx instance 2011-06-06 08:21:21 +01:00
Phil Nash
cae44d8ace Made Approx a little more forgiving (to 100& epsilon of float) and added some more tests for it 2011-06-03 18:56:47 +01:00
Phil Nash
48112c2700 Fixed a potential ordering issue with output streambufs 2011-05-31 18:47:30 +01:00
Phil Nash
6b6143ccd4 Removed templates from Approx (just uses double) 2011-05-31 07:51:04 +01:00
Phil Nash
89d1e6c4f1 Tweaks to allow headers to be glued together.
Added Python script to generate single header.
Added new XCode project that runs self test against single header
2011-05-24 08:23:02 +01:00
Phil Nash
4b24490e1a Fixed Github Issue #32: "ResultBuilder& operator << should use toString" 2011-05-11 10:06:28 +01:00
Phil Nash
0ea29b7d28 Started adding tests for Approx 2011-04-28 08:28:03 +01:00
Phil Nash
dfea75fc05 Allow epsilon and scale to be specified 2011-04-28 08:20:47 +01:00
Phil Nash
d7b8b01f3e Updated to use Richard Harris' approximation formula 2011-04-28 08:11:00 +01:00
Phil Nash
d7c203c3e9 Factored Approx out into own file 2011-04-28 08:03:28 +01:00
Phil Nash
95419e935c Merges objc top level headers into main headers (using #ifdef __OBJC__) 2011-04-26 19:00:25 +01:00
Phil Nash
38edb9fa95 Removed bool warning 2011-04-26 08:35:52 +01:00
Phil Nash
823ea3efd4 Re-org 2011-04-26 08:32:40 +01:00