Пример #1
0
void RemotingTest::testPtr()
{
	ITester::Ptr pTester = TesterClientHelper::find("MOCK://localhost/MOCK/Tester/TheTester");
	testPtr(pTester);
}
Пример #2
0
void RemotingTest::testPtr()
{
	ITester::Ptr pTester = createProxy(_objectURI);
	testPtr(pTester);
}
Пример #3
0
void testRefCountPtr() {
   LOG_INFO("About to test RefCountPtr");

   {
      LOG_INFO("Simple Test");

      int * testInt = new int(5);

      RefCountPtr<int> testPtr(testInt);

      LOG_INFO("Should be allocated with 1 reference");
      SDL_TriggerBreakpoint();
   }

   LOG_INFO("Should be freed");
   SDL_TriggerBreakpoint();

   {
      LOG_INFO("Multi reference Test");

      int * testInt = new int(10);

      RefCountPtr<int> testPtr(testInt);
      
      RefCountPtr<int> testPtr2 = testPtr;

      LOG_INFO("Should have 2 references");
      SDL_TriggerBreakpoint();

      testPtr.reset();

      LOG_INFO("Should have 1 references");
      SDL_TriggerBreakpoint();

      testPtr = testPtr2;

      LOG_INFO("Should have 2 references");
      SDL_TriggerBreakpoint();
   }

   LOG_INFO("Should be freed");
   SDL_TriggerBreakpoint();

   {
      LOG_INFO("PtrRoot Test");

      int * testInt = new int(20);
      RefCountPtrRoot<int>* testRoot = new RefCountPtrRoot<int>(testInt, false, new TestPtrHelper<int>());

      int * testInt2 = new int(40);
      RefCountPtrRoot<int>* testRoot2 = new RefCountPtrRoot<int>(testInt2, false, new TestPtrHelper<int>());

      RefCountPtr<int> testPtr(testRoot);

      LOG_INFO("Should have 1 references");
      SDL_TriggerBreakpoint();

      RefCountPtr<int> testPtr2 = testPtr;

      LOG_INFO("Should have 2 references");
      SDL_TriggerBreakpoint();

      testPtr = RefCountPtr<int>(testRoot2);

      LOG_INFO("Should have 1 references");
      SDL_TriggerBreakpoint();

      testPtr.reset();

      LOG_INFO("Should have 0 references");
      SDL_TriggerBreakpoint();

      testPtr2.reset();

      LOG_INFO("Should have 0 references");
      SDL_TriggerBreakpoint();
   }

   LOG_INFO("Should be freed");
   SDL_TriggerBreakpoint();
}