Martin Hořeňovský
3b98a0166f
Various small string usage performance improvements.
...
* Empty strings are now direct constructed as `std::string()`, not as empty string literals.
* `startsWith` and `endsWith` no longer construct new a string. This should be an improvement
for libstdc++ when using older standards, as it doesn't use SSO but COW and thus even short
strings are expensive to first create.
* Various places now use char literal instead of string literals containing single char.
** `startsWith` and `endsWith` now also have overload that takes single char.
Generally the performance improvements under VS2015 are small, as going from short string
to char is mostly meaningless because of SSO (Catch doesn't push string handling that hard)
and previous commit removed most string handling if tests pass, which is the expect case.
2017-01-15 10:05:01 +01:00
Phil Nash
21cbfc107e
--list-test-names quotes test names that start with #
...
- completes #717
2016-09-27 10:43:03 +01:00
Phil Nash
c06e1909ae
Refactored test filtering and sorting
2015-08-04 23:11:56 +01: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
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
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
1d210ebd37
Tag aliases feature
2014-06-30 07:33:17 +01:00
Phil Nash
d12c00666a
Make TagInfo non-local
2014-05-20 19:02:10 +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
ae75b3774a
Switched over to new name/ tag parser
2014-05-16 18:24:07 +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
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
ecb9432763
Simplified and tidied test case and tag listing
2013-11-12 18:59:34 +00:00
Fraser Hutchison
6253386458
Fixes overflow issue when listing tests.
2013-10-24 02:53:13 +01:00
Phil Nash
0b097c26b6
Fix wrapping width when listing tests
...
- addresses #201
2013-10-02 08:07:52 +01:00
Phil Nash
f3d1f08c3b
Removed all trailing whitespace
...
- addresses #105
2013-07-03 19:14:59 +01:00
Phil Nash
cd688300b0
Build 2
2013-06-29 12:11:32 +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
f438e04b5d
list options return number listed
2013-06-06 22:54:42 +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
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
b3acf45d70
Fully committed to new Text class.
...
- moved impl into .hpp
- replaced last few uses of LineWrapper with Text
- removed LineWrapper
2013-04-20 19:36:40 +01:00
Phil Nash
f186a912d4
Switched TextColour out for Colour
...
- Removed TextColour
2013-04-05 07:59:28 +01:00
Phil Nash
a3703faa0a
First cut of new Colour class (to replace TextColour)
2013-04-05 07:47:36 +01:00
Phil Nash
2a17ef9081
Use SecondaryText code in lists
2013-03-29 21:55:19 +00: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
15fd032608
Use new line wrapper to show test case list, with tags, in columns
2013-03-28 22:13:31 +00:00
Phil Nash
dd26e889b5
Build 28
2013-03-25 09:25:31 +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
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
a67d833091
More things using ConfigData
2012-08-13 19:27:03 +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
5d73c5a008
Resolve reporter outside of Config
...
config now only only holds reporter name
2012-07-17 08:04:19 +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
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
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
823ea3efd4
Re-org
2011-04-26 08:32:40 +01:00