[doctest] run with "--help" for options
===============================================================================
stringification.cpp(0):
TEST CASE:  all asserts should fail and show how the objects get stringified

stringification.cpp(0): ERROR: CHECK( f1 == f2 ) is NOT correct!
  values: CHECK( Foo{} == Foo{} )

stringification.cpp(0): ERROR: CHECK( dummy == "tralala" ) is NOT correct!
  values: CHECK( omg == tralala )

stringification.cpp(0): ERROR: CHECK( "tralala" == dummy ) is NOT correct!
  values: CHECK( tralala == omg )

stringification.cpp(0): ERROR: CHECK( vec1 == vec2 ) is NOT correct!
  values: CHECK( [1, 2, 3] == [1, 2, 4] )

stringification.cpp(0): ERROR: CHECK( lst_1 == lst_2 ) is NOT correct!
  values: CHECK( [1, 42, 3, ] == [1, 2, 666, ] )

stringification.cpp(0): ERROR: CHECK( s1 == s2 ) is NOT correct!
  values: CHECK( MyOtherType: 42 == MyOtherType: 666 )
  logged: s1=MyOtherType: 42 s2=MyOtherType: 666

stringification.cpp(0): ERROR: CHECK( s1 == s2 ) is NOT correct!
  values: CHECK( MyOtherType: 42 == MyOtherType: 666 )
  logged: s1=MyOtherType: 42 s2=MyOtherType: 666
          MyOtherType: 42 is not really MyOtherType: 666

stringification.cpp(0): ERROR: test case THREW exception: MyTypeInherited<int>(5, 4)

===============================================================================
stringification.cpp(0):
TEST CASE:  a test case that registers an exception translator for int and then throws one

stringification.cpp(0): ERROR: test case THREW exception: 5

===============================================================================
[doctest] test cases: 2 | 0 passed | 2 failed |
[doctest] assertions: 7 | 0 passed | 7 failed |
[doctest] Status: FAILURE!
Program code.
