// Execute all tests in this and added suites. // void Suite::do_run(Output* os, bool cont_after_fail) { _continue = cont_after_fail; _output = os; _output->suite_start(_tests.size(), _name); for_each(_tests.begin(), _tests.end(), ExecTests(*this)); _output->suite_end(_tests.size(), _name, total_time(false)); for_each(_suites.begin(), _suites.end(), DoRun(_output, _continue)); }
// Execute all tests in this and added suites. // void Suite::do_run(Output* os, bool cont_after_fail) { _continue = cont_after_fail; _output = os; _output->suite_start(_tests.size(), _name); for_each(_tests.begin(), _tests.end(), ExecTests(*this)); _output->suite_end(_tests.size(), _name, total_time(false)); for_each(_suites.begin(), _suites.end(), DoRun(_output, _continue)); // FIXME Find a cleaner way Suites::const_iterator iter = _suites.begin(); while (iter != _suites.end()) { if (!(*iter)->_success) { _success = false; break; } iter++; } }