/* * Copyright (c) 2014 Kevin Smith and Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #include #include #include #include #include #include #include using namespace Swift; class PubSubItemSerializerTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(PubSubItemSerializerTest); CPPUNIT_TEST(testSerialize); CPPUNIT_TEST(testSerializeEmptyID); CPPUNIT_TEST_SUITE_END(); public: void testSerialize() { PubSubItemSerializer serializer(&serializers); boost::shared_ptr payload(boost::make_shared()); payload->setRawXML(""); boost::shared_ptr item(boost::make_shared()); item->addData(payload); item->setID("pubsub-item-1"); std::string expectedResult = "" "" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(item)); } void testSerializeEmptyID() { PubSubItemSerializer serializer(&serializers); boost::shared_ptr item(boost::make_shared()); std::string expectedResult = ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(item)); } private: FullPayloadSerializerCollection serializers; }; CPPUNIT_TEST_SUITE_REGISTRATION(PubSubItemSerializerTest);