lichao
2021-05-19 34cd75f77d0ca94dbdba4e6cc9451fe4d33e78b3
utest/simple_tests.cpp
@@ -36,7 +36,7 @@
   BOOST_CHECK(!p);
   BOOST_CHECK(p.get() == 0);
   const char *str = "basic";
   p               = str;
   p = str;
   BOOST_CHECK(p);
   BOOST_CHECK(p.get() == str);
   p = 0;
@@ -49,7 +49,7 @@
      auto Code = [&](int id) {
         typedef ShmObject<s1000> Int;
         std::string name = std::to_string(id);
         auto a0          = Avail();
         auto a0 = Avail();
         Int i1(shm, name);
         auto a1 = Avail();
         BOOST_CHECK_LT(a1, a0);
@@ -64,7 +64,7 @@
         {
            auto old = Avail();
            void *p  = shm.Alloc(1024);
            void *p = shm.Alloc(1024);
            shm.Dealloc(p);
            BOOST_CHECK_EQUAL(old, Avail());
         }
@@ -80,7 +80,7 @@
   // boost::timer::auto_cpu_timer timer;
   ThreadManager threads;
   int nthread = 1;
   int nloop   = 1;
   int nloop = 1;
   for (int i = 0; i < nthread; ++i) {
      threads.Launch(BasicTest, i, nloop);
   }
@@ -106,15 +106,14 @@
BOOST_AUTO_TEST_CASE(TimedWaitTest)
{
   const std::string shm_name("shm_wait");
   ShmRemover auto_remove(shm_name);
   SharedMemory shm(shm_name, 1024 * 1024);
   ShmMsgQueue q(shm, 64);
   SharedMemory &shm = TestShm();
   GlobalInit(shm);
   ShmMsgQueue q(shm, ShmMsgQueue::NewId(), 64);
   for (int i = 0; i < 2; ++i) {
      int ms = i * 100;
      printf("Timeout Test %4d: ", ms);
      boost::timer::auto_cpu_timer timer;
      BHMsg msg;
      MsgI msg;
      bool r = q.Recv(msg, ms);
      BOOST_CHECK(!r);
   }
@@ -122,19 +121,19 @@
BOOST_AUTO_TEST_CASE(RefCountTest)
{
   const std::string shm_name("ShmRefCount");
   ShmRemover auto_remove(shm_name);
   SharedMemory shm(shm_name, 1024 * 1024);
   SharedMemory &shm = TestShm();
   typedef MsgI Msg;
   GlobalInit(shm);
   MsgI m0(shm.Alloc(1000), shm.New<RefCount>());
   BOOST_CHECK(m0.IsCounted());
   Msg m0(1000);
   BOOST_CHECK(m0.valid());
   BOOST_CHECK_EQUAL(m0.Count(), 1);
   MsgI m1 = m0;
   BOOST_CHECK(m1.IsCounted());
   Msg m1 = m0;
   BOOST_CHECK(m1.valid());
   BOOST_CHECK_EQUAL(m1.AddRef(), 2);
   BOOST_CHECK_EQUAL(m0.AddRef(), 3);
   BOOST_CHECK_EQUAL(m0.Release(shm), 2);
   BOOST_CHECK_EQUAL(m0.Release(shm), 1);
   BOOST_CHECK_EQUAL(m1.Release(shm), 0);
   BOOST_CHECK(!m1.IsCounted());
   BOOST_CHECK_EQUAL(m0.Release(), 2);
   BOOST_CHECK_EQUAL(m0.Release(), 1);
   BOOST_CHECK_EQUAL(m1.Release(), 0);
   BOOST_CHECK(!m1.valid());
}