Phil Nash
7c25dae9ea
First attempt at data generator support
...
The support is to be considered experimental, that is, the interfaces,
the first party generators and helper functions can change or be removed
at any point in time.
Related to #850
2018-08-24 13:31:51 +02:00
Zsolt Parragi
886d799b79
Fix clang-tidy 6 diagnostic about virtual call in destructor
2018-03-21 17:05:15 +01:00
Phil Nash
aa9d635014
Refactored StreamRedirect classes
2017-12-05 23:19:28 +00:00
Phil Nash
533cdc6bc1
Revirtualised IResultCapture methods
...
Didn't really impact runtime anyway, but will need to use interface for threading support.
2017-12-05 16:23:10 +00:00
Phil Nash
dfa817ae73
Just track whether last assertion passed directly, rather than deduce it from counts
2017-12-02 18:44:23 +00:00
Phil Nash
57c346a46d
Removed assertionRun() and rolled its logic into assertionPassed() and assertionEnded()
2017-12-02 18:44:23 +00:00
Phil Nash
b76e80ed3d
Small clean-ups
2017-11-30 17:54:44 +03:00
Phil Nash
da86ddc620
Fixed accidental const & formating
2017-11-27 22:28:45 +03:00
Phil Nash
4b614ee1d1
Moved all AssertionHandler logic into RunContext and de-virtualised interface
...
This makes the assertion handling much less "chatty". AssertionHandler is now just a thin shim over RunContext
2017-11-27 22:23:15 +03:00
Phil Nash
fcba30569c
Refactored to resetAssertionInfo()
2017-11-20 16:33:06 +00:00
Phil Nash
56e1075613
Introduced ReusableStringStream and removed all uses of std::ostringstream from the main path
...
ReusableStringStream holds a std::ostringstream internally, but only exposes the ostream interface.
It caches a pool of ostringstreams in a vector which is currently global, but will be made thread-local.
Altogether this should enable both runtime and compile-time benefits. although more work is needed to realise the compile time opportunities.
2017-11-07 18:01:10 +00:00
Phil Nash
8da0d0473b
qualified a load of size_ts with std:: namespace (all those not from Clara)
2017-09-18 17:13:17 +01:00
Martin Hořeňovský
40209d1ae0
Use StringRef on fatal error path
...
So far the fatal error path only uses string literals, so this removes
an allocation from that context
2017-09-14 20:05:25 +02:00
Phil Nash
c5608f0202
Changed all .hpp extensions to .h where there is now a corresponding .cpp
2017-09-07 11:24:33 +01:00