more test utils

This commit is contained in:
Michael Davidsaver
2019-11-26 17:53:41 -08:00
parent 4c60d72f9c
commit dd4da5d6d5
5 changed files with 55 additions and 5 deletions
+6 -1
View File
@@ -39,13 +39,18 @@ void cleanup_for_valgrind()
namespace detail {
Escaper::Escaper(const char* v)
:val(v)
,count(v ? strlen(v) : 0)
{}
std::ostream& operator<<(std::ostream& strm, const Escaper& esc)
{
const char *s = esc.val;
if(!s) {
strm<<"<NULL>";
} else {
for(; *s; s++) {
for(size_t n=0; n<esc.count; n++,s++) {
char c = *s, next;
switch(c) {
case '\a': next = 'a'; break;