/* * Copyright (c) 2018 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include #include #include #include using namespace Swift; static FullPayloadSerializerCollection serializers; TEST(ReferencePayloadSerializerTest, testSerialize) { ReferencePayloadSerializer testling(&serializers); auto reference = std::make_shared(); reference->setType(ReferencePayload::Type::Data); reference->setUri(boost::optional("https://www.example.com/mindBlowingImage.jpeg")); reference->setBegin(boost::optional("11")); reference->setEnd(boost::optional("22")); reference->setAnchor(boost::optional("xmpp:data@localhost.example.test")); std::string expectedResult = ""; ASSERT_EQ(expectedResult, testling.serialize(reference)); } TEST(ReferencePayloadSerializerTest, testSerializeNoType) { ReferencePayloadSerializer testling(&serializers); auto reference = std::make_shared(); reference->setUri(boost::optional("https://www.example.com/mindBlowingImage.jpeg")); reference->setBegin(boost::optional("11")); reference->setEnd(boost::optional("22")); reference->setAnchor(boost::optional("xmpp:data@localhost.example.test")); std::string expectedResult = ""; ASSERT_EQ(expectedResult, testling.serialize(reference)); } TEST(ReferencePayloadSerializerTest, testSerializeWithEmbeddedPayload) { ReferencePayloadSerializer testling(&serializers); auto reference = std::make_shared(); reference->setUri(boost::optional("https://www.example.com/mindBlowingImage.jpeg")); reference->setBegin(boost::optional("11")); reference->setEnd(boost::optional("22")); reference->setAnchor(boost::optional("xmpp:data@localhost.example.test")); auto payload = std::make_shared(std::string("Look, I'm in a reference")); reference->addPayload(payload); std::string expectedResult = "" "Look, I'm in a reference" ""; ASSERT_EQ(expectedResult, testling.serialize(reference)); }