/* * Copyright (c) 2014-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include #include #include #include #include #include using namespace Swift; class ResultSetSerializerTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(ResultSetSerializerTest); CPPUNIT_TEST(testSerializeFull); CPPUNIT_TEST(testSerializeMaxItems); CPPUNIT_TEST(testSerializeEmptyBefore); CPPUNIT_TEST(testSerializeFirst); CPPUNIT_TEST(testSerializeFirstWithIndex); CPPUNIT_TEST_SUITE_END(); public: void testSerializeFull() { ResultSetSerializer serializer; std::shared_ptr resultSet(std::make_shared()); resultSet->setMaxItems(100); resultSet->setCount(800); resultSet->setIndex(0); resultSet->setFirstIDIndex(123); resultSet->setFirstID(std::string("stpeter@jabber.org")); resultSet->setLastID(std::string("peterpan@neverland.lit")); resultSet->setAfter(std::string("09af3-cc343-b409f")); resultSet->setBefore(std::string("decaf-badba-dbad1")); std::string expectedResult = "" "100" "800" "0" "stpeter@jabber.org" "peterpan@neverland.lit" "decaf-badba-dbad1" "09af3-cc343-b409f" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(resultSet)); } void testSerializeMaxItems() { ResultSetSerializer serializer; std::shared_ptr resultSet(std::make_shared()); resultSet->setMaxItems(100); std::string expectedResult = "" "100" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(resultSet)); } void testSerializeEmptyBefore() { ResultSetSerializer serializer; std::shared_ptr resultSet(std::make_shared()); resultSet->setBefore(std::string()); std::string expectedResult = "" "" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(resultSet)); } void testSerializeFirst() { ResultSetSerializer serializer; std::shared_ptr resultSet(std::make_shared()); resultSet->setFirstID(std::string("stpeter@jabber.org")); std::string expectedResult = "" "stpeter@jabber.org" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(resultSet)); } void testSerializeFirstWithIndex() { ResultSetSerializer serializer; std::shared_ptr resultSet(std::make_shared()); resultSet->setFirstID(std::string("stpeter@jabber.org")); resultSet->setFirstIDIndex(123); std::string expectedResult = "" "stpeter@jabber.org" ""; CPPUNIT_ASSERT_EQUAL(expectedResult, serializer.serialize(resultSet)); } }; CPPUNIT_TEST_SUITE_REGISTRATION(ResultSetSerializerTest);