sal/cppunittester/cppunittester.cxx | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-)
New commits: commit b2725b7d1bd53211a7c432f79a8ab5ab4b6d448f Author: Stephan Bergmann <sberg...@redhat.com> Date: Wed Jun 4 11:05:58 2014 +0200 Keep TestFixture alive until outputter is done with it Change-Id: Ifd921efa971f7a9a5c47f42c5d56a3deb1c3a0b3 diff --git a/sal/cppunittester/cppunittester.cxx b/sal/cppunittester/cppunittester.cxx index 9c58b27..51bc5c6 100644 --- a/sal/cppunittester/cppunittester.cxx +++ b/sal/cppunittester/cppunittester.cxx @@ -218,38 +218,42 @@ public: } #endif - CppUnit::TestResultCollector collector; - result.addListener(&collector); + for (size_t i = 0; i < protectors.size(); ++i) + result.pushProtector(protectors[i]); + + bool success; + { + CppUnit::TestResultCollector collector; + result.addListener(&collector); - LogFailuresAsTheyHappen logger; - result.addListener(&logger); + LogFailuresAsTheyHappen logger; + result.addListener(&logger); #ifdef TIMETESTS - TimingListener timer; - result.addListener(&timer); + TimingListener timer; + result.addListener(&timer); #endif #ifdef UNX - EyecatcherListener eye; - result.addListener(&eye); + EyecatcherListener eye; + result.addListener(&eye); #endif - for (size_t i = 0; i < protectors.size(); ++i) - result.pushProtector(protectors[i]); - { CppUnit::TestRunner runner; runner.addTest( CppUnit::TestFactoryRegistry::getRegistry().makeTest()); runner.run(result); + + CppUnit::CompilerOutputter outputter(&collector, CppUnit::stdCErr()); + outputter.setNoWrap(); + outputter.write(); + success = collector.wasSuccessful(); } for (size_t i = 0; i < protectors.size(); ++i) result.popProtector(); - CppUnit::CompilerOutputter outputter(&collector, CppUnit::stdCErr()); - outputter.setNoWrap(); - outputter.write(); - return collector.wasSuccessful(); + return success; } virtual bool operator()() const SAL_OVERRIDE { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits