1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
[doctest] run with "--help" for options
===============================================================================
stringification.cpp(0):
TEST CASE: operator<<
stringification.cpp(0): MESSAGE: A
stringification.cpp(0): MESSAGE: B
stringification.cpp(0): MESSAGE: C
===============================================================================
stringification.cpp(0):
TEST CASE: no headers
stringification.cpp(0): MESSAGE: 1as
stringification.cpp(0): ERROR: CHECK( chs == nullptr ) is NOT correct!
values: CHECK( 1as == nullptr )
stringification.cpp(0): MESSAGE: 1as
stringification.cpp(0): ERROR: CHECK( "1as" == nullptr ) is NOT correct!
values: CHECK( 1as == nullptr )
stringification.cpp(0): MESSAGE: [0, 1, 1, 2, 3, 5, 8, 13]
stringification.cpp(0): ERROR: CHECK( ints == nullptr ) is NOT correct!
values: CHECK( [0, 1, 1, 2, 3, 5, 8, 13] == nullptr )
stringification.cpp(0): MESSAGE: [0, 1, 1, 2, 3, 5, 8, 13]
stringification.cpp(0): MESSAGE: nullptr
stringification.cpp(0): ERROR: CHECK( cnptr != nullptr ) is NOT correct!
values: CHECK( nullptr != nullptr )
stringification.cpp(0): MESSAGE: 0
stringification.cpp(0): ERROR: CHECK( A == C ) is NOT correct!
values: CHECK( 0 == 100 )
stringification.cpp(0): MESSAGE: int
===============================================================================
stringification.cpp(0):
TEST CASE: all asserts should fail and show how the objects get stringified
stringification.cpp(0): MESSAGE: Foo{}
stringification.cpp(0): ERROR: CHECK( f1 == f2 ) is NOT correct!
values: CHECK( Foo{} == Foo{} )
stringification.cpp(0): MESSAGE: omg
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): MESSAGE: [1, 2, 3]
stringification.cpp(0): ERROR: CHECK( vec1 == vec2 ) is NOT correct!
values: CHECK( [1, 2, 3] == [1, 2, 4] )
stringification.cpp(0): MESSAGE: [1, 42, 3]
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: CHECK( "a" == doctest::Contains("aaa") ) is NOT correct!
values: CHECK( a == Contains( aaa ) )
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: 4 | 1 passed | 3 failed |
[doctest] assertions: 18 | 5 passed | 13 failed |
[doctest] Status: FAILURE!
Program code.
|