X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDRO_tests%2Ftest_HYDROData_Main.cxx;h=6d6840931a0fb1fb2aa97ff79ce0b21f6227f172;hb=3bece499e83cc9ca95536228c7f6740030e9d5d8;hp=fb731922dc38b5c1e851dc1c94a02184fc4dbed9;hpb=438adbfba1a0b6f6f608b9f874c9ec144d29ad1a;p=modules%2Fhydro.git diff --git a/src/HYDRO_tests/test_HYDROData_Main.cxx b/src/HYDRO_tests/test_HYDROData_Main.cxx index fb731922..6d684093 100644 --- a/src/HYDRO_tests/test_HYDROData_Main.cxx +++ b/src/HYDRO_tests/test_HYDROData_Main.cxx @@ -24,31 +24,43 @@ #include #include #include -#include +#include #include #include #include #include -#include + +//#define _DEVDEBUG_ +#include "HYDRO_trace.hxx" + +#ifdef WIN32 +QString REF_DATA_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test/HYDRO/HYDRO"; +QString TMP_DIR = QDir::tempPath(); +#else +QString REF_DATA_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test/HYDRO/HYDRO"; +QString TMP_DIR = qgetenv( "HYDRO_ROOT_DIR" ) + "/test_ref"; +#endif + + +int MAIN_W = 800, MAIN_H = 600; int main( int argc, char* argv[] ) { - test_srand( 0 ); - QApplication anApp( argc, argv ); SUIT_Session aSession; + aSession.startApplication("std"); - OCCViewer_ViewWindow* aWindow = TestViewer::viewWindow(); + QDir().mkdir( TMP_DIR ); - int W = 800, H = 600; - aWindow->setGeometry( 200, 200, W, H ); + OCCViewer_ViewFrame* aWindow = TestViewer::viewWindow(); + + aWindow->setGeometry( 400, 100, MAIN_W, MAIN_H ); aWindow->show(); - QTest::qWaitForWindowShown( aWindow ); + QTest::qWaitForWindowExposed( aWindow ); - QSize aSize = aWindow->dumpView().size(); - int dx = W-aSize.width(); - int dy = H-aSize.height(); - aWindow->resize( W+dx, H+dy ); + int dy = 34; + //std::cout << dx << "," << dy << std::endl; + aWindow->resize( MAIN_W, MAIN_H+dy ); anApp.processEvents(); std::string testPath = (argc > 1) ? std::string(argv[1]) : ""; @@ -56,21 +68,25 @@ int main( int argc, char* argv[] ) // Create the event manager and test controller CppUnit::TestResult controller; - // Add a listener that colllects test result + // Add a listener that collects test result CppUnit::TestResultCollector result; - controller.addListener( &result ); + controller.addListener( &result ); // Add a listener that print dots as test run. TestLib_Listener progress; - controller.addListener( &progress ); + controller.addListener( &progress ); - CppUnit::TestFactoryRegistry& registry = + CppUnit::TestFactoryRegistry& registry = CppUnit::TestFactoryRegistry::getRegistry(); // Add the top suite to the test runner TestLib_Runner runner; +#ifdef WIN32 QString aPath = qgetenv( "HYDRO_SRC_DIR" ) + "/src/tests.cfg"; +#else + QString aPath = qgetenv( "HYDRO_ROOT_DIR" ) + "/tests.cfg"; +#endif runner.Load( aPath.toStdString() ); - runner.addTest( registry.makeTest() ); + runner.addTest( registry.makeTest() ); try { std::cout << "Running tests " << testPath << "..." << std::endl; @@ -84,12 +100,30 @@ int main( int argc, char* argv[] ) } catch ( std::invalid_argument &e ) // Test path not resolved { - std::cerr << std::endl + std::cerr << std::endl << "ERROR: " << e.what() << std::endl; return 0; } + bool isOK = result.wasSuccessful(); + +#ifndef WIN32 + DEBTRACE("End of tests"); +#endif + + aWindow->close(); + aSession.closeSession(); + anApp.exit(!isOK); + +#ifndef WIN32 + DEBTRACE("--- TODO: exception on exit..."); // TODO: exception on exit... +#endif + + int ms = progress.GetCompleteTimeInMS(); + printf( "\n\n" ); + printf( "%i TESTS in %i SUITES\n", progress.GetNbTests(), progress.GetNbSuites() ); + printf( "COMPLETE TESTS TIME: %i ms\n", ms ); + progress.DumpFailures(); - //anApp.exec(); return result.wasSuccessful() ? 0 : 1; }