Salome HOME
copy tag mergefrom_BR_V0_1_CC_Salome_04oct07
[modules/yacs.git] / src / bases / Test / basesTest.hxx
index dc974d64726e2b808edd43861ec14d5d0cdc008a..b20b32a76c69153010684b9d62f1b768d0110fa1 100644 (file)
@@ -6,14 +6,17 @@
 #include "Mutex.hxx"
 #include "Thread.hxx"
 #include "Semaphore.hxx"
+#include "DynLibLoader.hxx"
 
 namespace YACS
 {
   class BasesTest: public CppUnit::TestFixture
   {
     CPPUNIT_TEST_SUITE( BasesTest );
-    CPPUNIT_TEST(test1 );
-    CPPUNIT_TEST(test2 );
+    CPPUNIT_TEST( test1 );
+    CPPUNIT_TEST( test2 );
+    CPPUNIT_TEST( test3 );
+    CPPUNIT_TEST( testDL );
     CPPUNIT_TEST_SUITE_END();
       
   public:
@@ -23,7 +26,9 @@ namespace YACS
       
     void test1();
     void test2();
-      
+    void test3();
+    void testDL();
+
   protected:
       
   private:
@@ -31,16 +36,26 @@ namespace YACS
     static void *th1_2(void *);
     static void *th1_3(void *);
     static void *th2_1(void *);
+
+    static void *myFunc(void *);
+    static void get_resources(int id, int amount);
+    static void free_resources(int id, int amount);
+    static int count_resources();
       
     static int _var;
     static std::ostringstream _glob;
     static YACS::BASES::Mutex _m;
     static YACS::BASES::Semaphore _s1;
     static YACS::BASES::Semaphore _s2;
+    static YACS::BASES::Condition _cond;
       
     static const int THREAD_NUM;
     static const int LOOPS;
+    static const int MAX_RESOURCE;
     static int _value;
+    static int _waiting;
+    static int _resources;
+    static int _ownedResources[];
 
   };