root 1 1.1 root 2 2.1 root 2 root outside of subcase inside subcase 0 outside of subcase inside subcase 1 outside of subcase inside subcase 2 root outside of subcase also inside 0 outside of subcase also inside 1 outside of subcase also inside 2 root outside of subcase fail inside 0 outside of subcase root outside of subcase inside outside nested twice 0, 0 nested twice 0, 1 nested twice 0, 2 outside of subcase inside outside nested twice 1, 0 nested twice 1, 1 nested twice 1, 2 outside of subcase inside outside nested twice 2, 0 nested twice 2, 1 nested twice 2, 2 root outside of subcase inside outside also twice 0, 0 also twice 0, 1 also twice 0, 2 outside of subcase inside outside also twice 1, 0 also twice 1, 1 also twice 1, 2 outside of subcase inside outside also twice 2, 0 also twice 2, 1 also twice 2, 2 subcases.cpp(0): subcases.cpp(0): 1 subcases.cpp(0): CHECK( v.size() == 20 ) is NOT correct! values: CHECK( 10 == 20 ) subcases.cpp(0): CHECK( v.size() == 10 ) is NOT correct! values: CHECK( 5 == 10 ) subcases.cpp(0): CHECK( false ) is NOT correct! values: CHECK( false ) subcases.cpp(0): CHECK( false ) is NOT correct! values: CHECK( false ) exception thrown in subcase - will translate later when the whole test case has been exited (cannot translate while there is an active exception) failure... but the show must go on! subcases.cpp(0): CHECK( false ) is NOT correct! values: CHECK( false ) exception thrown in subcase - will translate later when the whole test case has been exited (cannot translate while there is an active exception) failure... but the show must go on! Program code.