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 1 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 print me twice hello! from sc1 lala print me twice hello! from sc2 lala v.size() == 20 10 == 20 v.size() == 10 5 == 10 false false false 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! false 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! msg! msg! msg! msg! separate msg! Yes! Yep! NO! Nooo Program code.