void AnyTest::testSwap() { std::string text = "test message"; Any original = text, swapped; std::string* originalPtr = AnyCast<std::string>(&original); Any* swapResult = &original.swap(swapped); assert (original.empty()); assert (!swapped.empty()); assert (swapped.type() == typeid(std::string)); assert (text == AnyCast<std::string>(swapped)); assert (0 != originalPtr); #ifdef POCO_NO_SOO // pointers only match when heap-allocated assert (originalPtr == AnyCast<std::string>(&swapped)); #endif assert (swapResult == &original); }