Year 2007.
[metaproxy-moved-to-github.git] / src / test_session2.cpp
index 2a7a8ba..1337f49 100644 (file)
@@ -1,3 +1,8 @@
+/* $Id: test_session2.cpp,v 1.9 2007-01-25 14:05:54 adam Exp $
+   Copyright (c) 2005-2007, Index Data.
+
+   See the LICENSE file for details
+ */
 #include "config.hpp"
 #include "session.hpp"
 
 #include <boost/test/auto_unit_test.hpp>
 
 using namespace boost::unit_test;
+namespace mp = metaproxy_1;
 
 boost::mutex io_mutex;
 
 class Worker 
 {
     public:
-        Worker(yp2::Session *session, int nr = 0) 
-            : m_session(session), m_nr(nr){};
+        Worker(int nr = 0) 
+            :  m_nr(nr){};
         
         void operator() (void) {
             for (int i=0; i < 100; ++i)
             {
-                m_id = m_session->id();   
+                mp::Session session;
+                m_id = session.id();   
                 //print();
             }
         }
@@ -36,31 +43,32 @@ class Worker
         }
         
     private: 
-        yp2::Session *m_session;
         int m_nr;
         int m_id;
 };
 
 
 
-BOOST_AUTO_TEST_CASE( testsession2 ) 
+BOOST_AUTO_UNIT_TEST( testsession2 ) 
 {
 
     // test session 
     try {
-        yp2::Session session;
 
-        const int num_threads = 10;
+        const int num_threads = 100;
         boost::thread_group thrds;
         
+
         for (int i=0; i < num_threads; ++i)
         {
-            Worker w(&session, i);
+            // Notice that each Worker has it's own session object!
+            Worker w(i);
             thrds.add_thread(new boost::thread(w));
         }
         thrds.join_all();
 
-        BOOST_CHECK (session.id() == 1001);
+        mp::Session session;
+        BOOST_CHECK (session.id() == 10001);
         
     }
     catch (std::exception &e) {
@@ -76,6 +84,7 @@ BOOST_AUTO_TEST_CASE( testsession2 )
  * Local variables:
  * c-basic-offset: 4
  * indent-tabs-mode: nil
+ * c-file-style: "stroustrup"
  * End:
  * vim: shiftwidth=4 tabstop=8 expandtab
  */