Salome HOME
implementation of the strickler types (integer codes) for points
[modules/hydro.git] / src / HYDRO_tests / test_HYDROData_Main.cxx
index 360841ac26d01438d2a17cf446e405bf93f6b3ec..d50bdcf7831fcec5954238c6a03c7a52385c759b 100644 (file)
 #include <cppunit/CompilerOutputter.h>
 #include <cppunit/TestResult.h>
 #include <cppunit/TestResultCollector.h>
-#include <cppunit/TextTestProgressListener.h>
 #include <stdexcept>
 #include <TestViewer.h>
+#include <TestLib_Listener.h>
 #include <TestLib_Runner.h>
 #include <OCCViewer_ViewWindow.h>
 #include <SUIT_Session.h>
 #include <QApplication>
 #include <QColor>
-#include <time.h>
+#include <QTest>
+
+#define _DEVDEBUG_
+#include "HYDRO_trace.hxx"
 
 int main( int argc, char* argv[] )
 {
-  srand( 0 );
-
   QApplication anApp( argc, argv );
   SUIT_Session aSession;
+  aSession.startApplication("std");
 
   OCCViewer_ViewWindow* aWindow = TestViewer::viewWindow();
-  aWindow->setGeometry( 200, 200, 800, 600 );
+
+  int W = 800, H = 600;
+  aWindow->setGeometry( 200, 200, W, H );
   aWindow->show();
+  QTest::qWaitForWindowShown( aWindow );
+
+  int dy = 34;
+  //std::cout << dx << "," << dy << std::endl;
+  aWindow->resize( W, H+dy );
+  anApp.processEvents();
 
   std::string testPath = (argc > 1) ? std::string(argv[1]) : "";
 
   // 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 );        
 
   // Add a listener that print dots as test run.
-  CppUnit::TextTestProgressListener progress;
+  TestLib_Listener progress;
   controller.addListener( &progress );      
 
   CppUnit::TestFactoryRegistry& registry = 
@@ -63,7 +73,7 @@ int main( int argc, char* argv[] )
   runner.addTest( registry.makeTest() );   
   try
   {
-    std::cout << "Running "  <<  testPath;
+    std::cout << "Running tests "  << testPath << "..." << std::endl;
     runner.Run( controller );
 
     std::cerr << std::endl;
@@ -79,7 +89,11 @@ int main( int argc, char* argv[] )
       << std::endl;
     return 0;
   }
-
-  //anApp.exec();
+  bool isOK = result.wasSuccessful();
+  DEBTRACE("End of tests");
+  aWindow->close();
+  aSession.closeSession();
+  anApp.exit(!isOK);
+  DEBTRACE("--- TODO: exception on exit..."); // TODO: exception on exit...
   return result.wasSuccessful() ? 0 : 1;
 }