From d81594d7b7cfd80b5ce7a3abc34f7d234f19216e Mon Sep 17 00:00:00 2001 From: Eric Schmidt Date: Wed, 20 Apr 2016 21:52:20 -0600 Subject: [PATCH] Put quote marks around printed characters; also nicely print some escapes --- include/internal/catch_tostring.hpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/include/internal/catch_tostring.hpp b/include/internal/catch_tostring.hpp index 687a9117..c475229a 100644 --- a/include/internal/catch_tostring.hpp +++ b/include/internal/catch_tostring.hpp @@ -149,9 +149,19 @@ std::string toString( bool value ) { } std::string toString( char value ) { - return value < ' ' - ? toString( static_cast( value ) ) - : Detail::makeString( value ); + if ( value == '\r' ) + return "'\\r'"; + if ( value == '\l' ) + return "'\\l'"; + if ( value == '\n' ) + return "'\\n'"; + if ( value == '\t' ) + return "'\\t'"; + if ( '\0' <= value && value < ' ' ) + return toString( static_cast( value ) ); + char chstr[] = "' '"; + chstr[1] = value; + return chstr; } std::string toString( signed char value ) {