/* * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include #include #include #include #include #include using namespace Swift; class ErrorSerializerTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(ErrorSerializerTest); CPPUNIT_TEST(testSerialize); CPPUNIT_TEST(testSerialize_Payload); CPPUNIT_TEST_SUITE_END(); public: void testSerialize() { ErrorSerializer testling(&serializers); std::shared_ptr error(new ErrorPayload(ErrorPayload::BadRequest, ErrorPayload::Cancel, "My Error")); CPPUNIT_ASSERT_EQUAL(std::string("My Error"), testling.serialize(error)); } void testSerialize_Payload() { ErrorSerializer testling(&serializers); std::shared_ptr error = std::make_shared(); error->setPayload(std::make_shared()); CPPUNIT_ASSERT_EQUAL(std::string( "" ), testling.serialize(error)); } private: FullPayloadSerializerCollection serializers; }; CPPUNIT_TEST_SUITE_REGISTRATION(ErrorSerializerTest);