diff options
20 files changed, 48 insertions, 51 deletions
diff --git a/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp b/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp index 4729fdb..c5304a6 100644 --- a/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp +++ b/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp @@ -109,64 +109,64 @@ FullPayloadParserFactoryCollection::FullPayloadParserFactoryCollection() { factories_.push_back(std::make_shared<GenericPayloadParserFactory<ThreadParser> >("thread")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<PriorityParser> >("priority")); factories_.push_back(std::make_shared<ErrorParserFactory>(this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<DelayParser> >("delay", "urn:xmpp:delay")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<SoftwareVersionParser> >("query", "jabber:iq:version")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<StorageParser> >("storage", "storage:bookmarks")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<RosterItemExchangeParser> >("x", "http://jabber.org/protocol/rosterx")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<RosterParser> >("query", "jabber:iq:roster")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<DiscoInfoParser> >("query", "http://jabber.org/protocol/disco#info")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<DiscoItemsParser> >("query", "http://jabber.org/protocol/disco#items")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<CapsInfoParser> >("c", "http://jabber.org/protocol/caps")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<ResourceBindParser> >("bind", "urn:ietf:params:xml:ns:xmpp-bind")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<StartSessionParser> >("session", "urn:ietf:params:xml:ns:xmpp-session")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<BlockParser<BlockPayload> > >("block", "urn:xmpp:blocking")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<BlockParser<BlockListPayload> > >("blocklist", "urn:xmpp:blocking")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<BlockParser<UnblockPayload> > >("unblock", "urn:xmpp:blocking")); factories_.push_back(std::make_shared<SecurityLabelParserFactory>()); factories_.push_back(std::make_shared<GenericPayloadParserFactory<SecurityLabelsCatalogParser> >("catalog", "urn:xmpp:sec-label:catalog:2")); factories_.push_back(std::make_shared<FormParserFactory>()); factories_.push_back(std::make_shared<GenericPayloadParserFactory<CommandParser> >("command", "http://jabber.org/protocol/commands")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<InBandRegistrationPayloadParser> >("query", "jabber:iq:register")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<SearchPayloadParser> >("query", "jabber:iq:search")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<StreamInitiationParser> >("si", "http://jabber.org/protocol/si")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<BytestreamsParser> >("query", "http://jabber.org/protocol/bytestreams")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<VCardUpdateParser> >("x", "vcard-temp:x:update")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<VCardParser> >("vCard", "vcard-temp")); factories_.push_back(std::make_shared<PrivateStorageParserFactory>(this)); factories_.push_back(std::make_shared<ChatStateParserFactory>()); factories_.push_back(std::make_shared<ClientStateParserFactory>()); factories_.push_back(std::make_shared<MIXParticipantParserFactory>()); - factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXDestroyParser> >("destroy", "urn:xmpp:mix:1")); - factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXCreateParser> >("create", "urn:xmpp:mix:1")); - factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXUserPreferenceParser> >("user-preference", "urn:xmpp:mix:1")); - factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXLeaveParser> >("leave", "urn:xmpp:mix:1")); + factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXDestroyParser> >("destroy", "urn:xmpp:mix:0")); + factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXCreateParser> >("create", "urn:xmpp:mix:0")); + factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXUserPreferenceParser> >("user-preference", "urn:xmpp:mix:0")); + factories_.push_back(std::make_shared<GenericPayloadParserFactory<MIXLeaveParser> >("leave", "urn:xmpp:mix:0")); factories_.push_back(std::make_shared<MUCUserPayloadParserFactory>(this)); factories_.push_back(std::make_shared<MUCOwnerPayloadParserFactory>(this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<MUCInvitationPayloadParser> >("x", "jabber:x:conference")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<MUCAdminPayloadParser> >("query", "http://jabber.org/protocol/muc#admin")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<MUCDestroyPayloadParser> >("destroy", "http://jabber.org/protocol/muc#user")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<MUCDestroyPayloadParser> >("destroy", "http://jabber.org/protocol/muc#owner")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<NicknameParser> >("nick", "http://jabber.org/protocol/nick")); factories_.push_back(std::make_shared<JingleParserFactory>(this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<JingleReasonParser> >("reason", "urn:xmpp:jingle:1")); factories_.push_back(std::make_shared<JingleContentPayloadParserFactory>(this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<JingleIBBTransportMethodPayloadParser> >("transport", "urn:xmpp:jingle:transports:ibb:1")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<JingleS5BTransportMethodPayloadParser> >("transport", "urn:xmpp:jingle:transports:s5b:1")); factories_.push_back(std::make_shared<JingleFileTransferDescriptionParserFactory>(this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<StreamInitiationFileInfoParser> >("file", "http://jabber.org/protocol/si/profile/file-transfer")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<JingleFileTransferFileInfoParser> >("file", "urn:xmpp:jingle:apps:file-transfer:4")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<JingleFileTransferHashParser> >("checksum")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<S5BProxyRequestParser> >("query", "http://jabber.org/protocol/bytestreams")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<WhiteboardParser> >("wb", "http://swift.im/whiteboard")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<UserLocationParser> >("geoloc", "http://jabber.org/protocol/geoloc")); factories_.push_back(std::make_shared<GenericPayloadParserFactory<UserTuneParser> >("tune", "http://jabber.org/protocol/tune")); factories_.push_back(std::make_shared<DeliveryReceiptParserFactory>()); factories_.push_back(std::make_shared<DeliveryReceiptRequestParserFactory>()); factories_.push_back(std::make_shared<GenericPayloadParserFactory<IdleParser> >("idle", "urn:xmpp:idle:1")); factories_.push_back(std::make_shared<GenericPayloadParserFactory2<PubSubParser> >("pubsub", "http://jabber.org/protocol/pubsub", this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory2<PubSubOwnerPubSubParser> >("pubsub", "http://jabber.org/protocol/pubsub#owner", this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory2<PubSubEventParser> >("event", "http://jabber.org/protocol/pubsub#event", this)); factories_.push_back(std::make_shared<PubSubErrorParserFactory>()); factories_.push_back(std::make_shared<GenericPayloadParserFactory<ResultSetParser> >("set", "http://jabber.org/protocol/rsm")); factories_.push_back(std::make_shared<GenericPayloadParserFactory2<ForwardedParser> >("forwarded", "urn:xmpp:forward:0", this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory2<MAMResultParser> >("result", "urn:xmpp:mam:0", this)); diff --git a/Swiften/Parser/PayloadParsers/MIXJoinParser.cpp b/Swiften/Parser/PayloadParsers/MIXJoinParser.cpp index 2509667..0c09c44 100644 --- a/Swiften/Parser/PayloadParsers/MIXJoinParser.cpp +++ b/Swiften/Parser/PayloadParsers/MIXJoinParser.cpp @@ -8,68 +8,68 @@ #include <boost/optional.hpp> #include <Swiften/Parser/PayloadParserFactory.h> #include <Swiften/Parser/PayloadParsers/MIXSubscribeParser.h> #include <Swiften/Parser/PayloadParsers/FormParser.h> using namespace Swift; MIXJoinParser::MIXJoinParser() : level_(0) { } MIXJoinParser::~MIXJoinParser() { } void MIXJoinParser::handleStartElement(const std::string& element, const std::string& ns, const AttributeMap& attributes) { if (level_ == 0) { if (boost::optional<std::string> attributeValue = attributes.getAttributeValue("channel")) { if (boost::optional<JID> jid = JID::parse(*attributeValue)) { getPayloadInternal()->setChannel(*jid); } } if (boost::optional<std::string> attributeValue = attributes.getAttributeValue("jid")) { if (boost::optional<JID> jid = JID::parse(*attributeValue)) { getPayloadInternal()->setJID(*jid); } } } if (level_ == 1) { - if (element == "subscribe" && ns == "urn:xmpp:mix:1") { + if (element == "subscribe" && ns == "urn:xmpp:mix:0") { currentPayloadParser_ = std::make_shared<MIXSubscribeParser>(); } if (element == "x" && ns == "jabber:x:data") { currentPayloadParser_ = std::make_shared<FormParser>(); } } if (level_ >= 1 && currentPayloadParser_) { currentPayloadParser_->handleStartElement(element, ns, attributes); } ++level_; } void MIXJoinParser::handleEndElement(const std::string& element, const std::string& ns) { --level_; if (currentPayloadParser_) { if (level_ >= 1) { currentPayloadParser_->handleEndElement(element, ns); } if (level_ == 1) { - if (element == "subscribe" && ns == "urn:xmpp:mix:1") { + if (element == "subscribe" && ns == "urn:xmpp:mix:0") { getPayloadInternal()->addSubscription(std::dynamic_pointer_cast<MIXSubscribe>(currentPayloadParser_->getPayload())); } if (element == "x" && ns == "jabber:x:data") { getPayloadInternal()->setForm(std::dynamic_pointer_cast<Form>(currentPayloadParser_->getPayload())); } currentPayloadParser_.reset(); } } } void MIXJoinParser::handleCharacterData(const std::string& data) { if (level_ > 1 && currentPayloadParser_) { currentPayloadParser_->handleCharacterData(data); } } diff --git a/Swiften/Parser/PayloadParsers/MIXJoinParserFactory.h b/Swiften/Parser/PayloadParsers/MIXJoinParserFactory.h index 6103c70..8432c61 100644 --- a/Swiften/Parser/PayloadParsers/MIXJoinParserFactory.h +++ b/Swiften/Parser/PayloadParsers/MIXJoinParserFactory.h @@ -1,27 +1,27 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #pragma once #include <Swiften/Base/API.h> #include <Swiften/Parser/GenericPayloadParserFactory.h> #include <Swiften/Parser/PayloadParsers/MIXJoinParser.h> namespace Swift { class SWIFTEN_API MIXJoinParserFactory : public PayloadParserFactory { public: MIXJoinParserFactory() { } virtual bool canParse(const std::string& element, const std::string& ns, const AttributeMap&) const { - return element == "join" && ns == "urn:xmpp:mix:1"; + return element == "join" && ns == "urn:xmpp:mix:0"; } virtual PayloadParser* createPayloadParser() { return new MIXJoinParser(); } }; } diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXCreateParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXCreateParserTest.cpp index 85c79c6..f48bbc7 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXCreateParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXCreateParserTest.cpp @@ -1,78 +1,78 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXCreate.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXCreateParserTest, XEP0369_Example68) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<create xmlns=\"urn:xmpp:mix:1\"/>" + "<create xmlns=\"urn:xmpp:mix:0\"/>" )); auto payload = parser.getPayload<MIXCreate>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getData()); ASSERT_FALSE(payload->getChannel()); } TEST(MIXCreateParserTest, XEP0369_Example66) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:1\"/>" + "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:0\"/>" )); auto payload = parser.getPayload<MIXCreate>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getData()); ASSERT_TRUE(payload->getChannel()); ASSERT_EQ(std::string("coven"), *payload->getChannel()); } TEST(MIXCreateParserTest, XEP0369_Example67) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:1\">" + "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:0\">" "<x xmlns=\"jabber:x:data\" type=\"result\">" "<field var=\"FORM_TYPE\" type=\"hidden\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"Owner\">" "<value>hecate@shakespeare.lit</value>" "<value>greymalkin@shakespeare.lit</value>" "</field>" "<field var=\"Messages Node Subscription\">" "<value>allowed</value>" "</field>" "<field var=\"JID Visibility\">" "<value>jid-mandatory-visible</value>" "</field>" "<field var=\"No Private Messages\">" "<value>true</value>" "</field>" "</x>" "</create>" )); auto payload = parser.getPayload<MIXCreate>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getData()); ASSERT_EQ(Form::Type::ResultType, payload->getData()->getType()); std::shared_ptr<FormField> fieldType = payload->getData()->getField("FORM_TYPE"); ASSERT_TRUE(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = payload->getData()->getField("JID Visibility"); ASSERT_TRUE(fieldJIDVisibility); ASSERT_EQ(std::string("jid-mandatory-visible"), fieldJIDVisibility->getTextSingleValue()); diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParser.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParser.cpp index fc2588a..80eb144 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParser.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParser.cpp @@ -1,25 +1,25 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXDestroy.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXDestroyParserTest, XEP0369_Example70) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:1\"/>" + "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:0\"/>" )); auto payload = parser.getPayload<MIXDestroy>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getChannel()); ASSERT_EQ(std::string("coven"), *payload->getChannel()); } diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParserTest.cpp index 8e4dff2..5fa321e 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXDestroyParserTest.cpp @@ -1,24 +1,24 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXDestroy.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXDestroyParserTest, XEP0369_Example70) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:1\"/>" + "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:0\"/>" )); auto payload = parser.getPayload<MIXDestroy>(); ASSERT_TRUE(payload); ASSERT_EQ(std::string("coven"), payload->getChannel()); } diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXJoinParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXJoinParserTest.cpp index 7a422f4..88d8fc1 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXJoinParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXJoinParserTest.cpp @@ -1,168 +1,168 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXJoin.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXJoinParserTest, XEP0369_Example22) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<join xmlns=\"urn:xmpp:mix:1\" channel=\"coven@mix.shakespeare.example\">" + "<join xmlns=\"urn:xmpp:mix:0\" channel=\"coven@mix.shakespeare.example\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>" )); MIXJoin::ref payload = parser.getPayload<MIXJoin>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getChannel()); ASSERT_EQ(JID("coven@mix.shakespeare.example"), *payload->getChannel()); ASSERT_FALSE(payload->getJID()); ASSERT_FALSE(payload->getForm()); const std::vector<MIXSubscribe::ref> items = payload->getSubscriptions(); ASSERT_EQ(static_cast<size_t>(4), items.size()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:messages"), items[0]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:presence"), items[1]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:participants"), items[2]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:config"), items[3]->getNode()); } TEST(MIXJoinParserTest, XEP0369_Example23) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<join xmlns=\"urn:xmpp:mix:1\">" + "<join xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>" )); MIXJoin::ref payload = parser.getPayload<MIXJoin>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getChannel()); ASSERT_FALSE(payload->getJID()); ASSERT_FALSE(payload->getForm()); const std::vector<MIXSubscribe::ref> items = payload->getSubscriptions(); ASSERT_EQ(static_cast<size_t>(4), items.size()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:messages"), items[0]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:presence"), items[1]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:participants"), items[2]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:config"), items[3]->getNode()); } TEST(MIXJoinParserTest, XEP0369_Example24) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<join xmlns=\"urn:xmpp:mix:1\" jid=\"123456#coven@mix.shakespeare.example\">" + "<join xmlns=\"urn:xmpp:mix:0\" jid=\"123456#coven@mix.shakespeare.example\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>" )); MIXJoin::ref payload = parser.getPayload<MIXJoin>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getChannel()); ASSERT_TRUE(payload->getJID()); ASSERT_EQ(JID("123456#coven@mix.shakespeare.example"), *payload->getJID()); ASSERT_FALSE(payload->getForm()); const std::vector<MIXSubscribe::ref> items = payload->getSubscriptions(); ASSERT_EQ(static_cast<size_t>(4), items.size()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:messages"), items[0]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:presence"), items[1]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:participants"), items[2]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:config"), items[3]->getNode()); } TEST(MIXJoinParserTest, XEP0369_Example29) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<join xmlns=\"urn:xmpp:mix:1\">" + "<join xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<x xmlns=\"jabber:x:data\" type=\"submit\">" "<field var=\"FORM_TYPE\" type=\"hidden\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"JID Visibility\">" "<value>never</value>" "</field>" "</x>" "</join>")); MIXJoin::ref payload = parser.getPayload<MIXJoin>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getChannel()); ASSERT_FALSE(payload->getJID()); const std::vector<MIXSubscribe::ref> items = payload->getSubscriptions(); ASSERT_EQ(static_cast<size_t>(2), items.size()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:messages"), items[0]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:presence"), items[1]->getNode()); ASSERT_TRUE(payload->getForm()); ASSERT_EQ(Form::Type::SubmitType, payload->getForm()->getType()); std::shared_ptr<FormField> fieldType = payload->getForm()->getField("FORM_TYPE"); ASSERT_TRUE(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = payload->getForm()->getField("JID Visibility"); ASSERT_TRUE(fieldJIDVisibility); ASSERT_EQ(std::string("never"), fieldJIDVisibility->getTextSingleValue()); } TEST(MIXJoinParserTest, XEP0369_Example30) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<join xmlns=\"urn:xmpp:mix:1\" jid=\"hag66@shakespeare.example\">" + "<join xmlns=\"urn:xmpp:mix:0\" jid=\"hag66@shakespeare.example\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<x xmlns=\"jabber:x:data\" type=\"result\">" "<field var=\"FORM_TYPE\" type=\"hidden\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"JID Visibility\">" "<value>never</value>" "</field>" "<field var=\"Private Messages\">" "<value>allow</value>" "</field>" "<field var=\"vCard\">" "<value>block</value>" "</field>" "</x>" "</join>")); MIXJoin::ref payload = parser.getPayload<MIXJoin>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getChannel()); ASSERT_TRUE(payload->getJID()); ASSERT_EQ(JID("hag66@shakespeare.example"), *payload->getJID()); const std::vector<MIXSubscribe::ref> items = payload->getSubscriptions(); ASSERT_EQ(static_cast<size_t>(2), items.size()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:messages"), items[0]->getNode()); ASSERT_EQ(std::string("urn:xmpp:mix:nodes:presence"), items[1]->getNode()); ASSERT_TRUE(payload->getForm()); ASSERT_EQ(Form::Type::ResultType, payload->getForm()->getType()); std::shared_ptr<FormField> fieldType = payload->getForm()->getField("FORM_TYPE"); ASSERT_TRUE(fieldType); diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXLeaveParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXLeaveParserTest.cpp index dab3ea4..0a2839e 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXLeaveParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXLeaveParserTest.cpp @@ -1,32 +1,32 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXLeave.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXLeaveParserTest, XEP0369_Example33) { PayloadsParserTester parser; - ASSERT_TRUE(parser.parse("<leave xmlns=\"urn:xmpp:mix:1\" channel=\"coven@mix.shakespeare.example\"/>")); + ASSERT_TRUE(parser.parse("<leave xmlns=\"urn:xmpp:mix:0\" channel=\"coven@mix.shakespeare.example\"/>")); auto payload = parser.getPayload<MIXLeave>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getChannel()); ASSERT_EQ(JID("coven@mix.shakespeare.example"), *payload->getChannel()); } TEST(MIXLeaveParserTest, XEP0369_Example34) { PayloadsParserTester parser; - ASSERT_TRUE(parser.parse("<leave xmlns=\"urn:xmpp:mix:1\"/>")); + ASSERT_TRUE(parser.parse("<leave xmlns=\"urn:xmpp:mix:0\"/>")); auto payload = parser.getPayload<MIXLeave>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getChannel()); } diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXParticipantParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXParticipantParserTest.cpp index 27c02e7..57d4b35 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXParticipantParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXParticipantParserTest.cpp @@ -27,33 +27,30 @@ TEST(MIXParticipantParserTest, XEP0369_Example1_ParticipantWithNick) { ASSERT_FALSE(payload->getJID()); } TEST(MIXParticipantParserTest, XEP0369_Example2_ParticipantWithJID) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( "<participant xmlns='urn:xmpp:mix:0'> <jid>hecate@mix.shakespeare.example</jid> </participant>" )); MIXParticipant::ref payload = parser.getPayload<MIXParticipant>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getJID()); JID jid = *payload->getJID(); ASSERT_EQ("hecate@mix.shakespeare.example", jid.toString()); ASSERT_FALSE(payload->getNick()); } TEST(MIXParticipantParserTest, XEP0369_Example27_ParticipantEmpty) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( "<participant xmlns='urn:xmpp:mix:0'/>" )); MIXParticipant::ref payload = parser.getPayload<MIXParticipant>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getNick()); ASSERT_FALSE(payload->getJID()); } - - - diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MIXUserPreferenceParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MIXUserPreferenceParserTest.cpp index 3d048a5..7115f2a 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MIXUserPreferenceParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MIXUserPreferenceParserTest.cpp @@ -1,62 +1,62 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Elements/MIXUserPreference.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> using namespace Swift; TEST(MIXUserPreferenceParserTest, XEP0369_Example31) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<user-preference xmlns='urn:xmpp:mix:1'/>" + "<user-preference xmlns='urn:xmpp:mix:0'/>" )); auto payload = parser.getPayload<MIXUserPreference>(); ASSERT_TRUE(payload); ASSERT_FALSE(payload->getData()); } TEST(MIXUserPreferenceParserTest, XEP0369_Example32) { PayloadsParserTester parser; ASSERT_TRUE(parser.parse( - "<user-preference xmlns='urn:xmpp:mix:1'>" + "<user-preference xmlns='urn:xmpp:mix:0'>" "<x xmlns='jabber:x:data' type='result'>" "<field var='FORM_TYPE' type='hidden'>" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var='JID Visibility'>" "<value>never</value>" "</field>" "<field var='Private Messages'>" "<value>allow</value>" "</field>" "<field var='vCard'>" "<value>block</value>" "</field>" "</x>" "</user-preference>" )); auto payload = parser.getPayload<MIXUserPreference>(); ASSERT_TRUE(payload); ASSERT_TRUE(payload->getData()); ASSERT_EQ(Form::Type::ResultType, payload->getData()->getType()); std::shared_ptr<FormField> fieldType = payload->getData()->getField("FORM_TYPE"); ASSERT_TRUE(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = payload->getData()->getField("JID Visibility"); ASSERT_TRUE(fieldJIDVisibility); ASSERT_EQ(std::string("never"), fieldJIDVisibility->getTextSingleValue()); std::shared_ptr<FormField> fieldprivateMessages = payload->getData()->getField("Private Messages"); ASSERT_TRUE(fieldprivateMessages); ASSERT_EQ(std::string("allow"), fieldprivateMessages->getTextSingleValue()); diff --git a/Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.cpp index 9476df2..2034d86 100644 --- a/Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.cpp @@ -1,38 +1,38 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.h> #include <memory> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> using namespace Swift; MIXCreateSerializer::MIXCreateSerializer() { } MIXCreateSerializer::~MIXCreateSerializer() { } std::string MIXCreateSerializer::serializePayload(std::shared_ptr<MIXCreate> payload) const { if (!payload) { return ""; } - XMLElement element("create", "urn:xmpp:mix:1"); + XMLElement element("create", "urn:xmpp:mix:0"); if(payload->getChannel()) { element.setAttribute("channel", *payload->getChannel()); } if(payload->getData()) { element.addNode(std::make_shared<XMLRawTextNode>(FormSerializer().serialize(payload->getData()))); } return element.serialize(); } diff --git a/Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.cpp b/Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.cpp index a395416..ed0d252 100644 --- a/Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.cpp @@ -1,30 +1,30 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.h> #include <memory> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> using namespace Swift; MIXDestroySerializer::MIXDestroySerializer() { } MIXDestroySerializer::~MIXDestroySerializer() { } std::string MIXDestroySerializer::serializePayload(std::shared_ptr<MIXDestroy> payload) const { if (!payload) { return ""; } - XMLElement element("destroy", "urn:xmpp:mix:1"); + XMLElement element("destroy", "urn:xmpp:mix:0"); element.setAttribute("channel", payload->getChannel()); return element.serialize(); } diff --git a/Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.cpp index cae15c2..cfb4d31 100644 --- a/Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.cpp @@ -1,42 +1,42 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.h> #include <memory> #include <Swiften/Serializer/PayloadSerializers/MIXSubscribeSerializer.h> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> using namespace Swift; MIXJoinSerializer::MIXJoinSerializer() { } MIXJoinSerializer::~MIXJoinSerializer() { } std::string MIXJoinSerializer::serializePayload(std::shared_ptr<MIXJoin> payload) const { if (!payload) { return ""; } - XMLElement element("join", "urn:xmpp:mix:1"); + XMLElement element("join", "urn:xmpp:mix:0"); if (payload->getChannel()) { element.setAttribute("channel", *payload->getChannel()); } if (payload->getJID()) { element.setAttribute("jid", *payload->getJID()); } for (const auto& item : payload->getSubscriptions()) { element.addNode(std::make_shared<XMLRawTextNode>(MIXSubscribeSerializer().serialize(item))); } if (payload->getForm()) { element.addNode(std::make_shared<XMLRawTextNode>(FormSerializer().serialize(payload->getForm()))); } return element.serialize(); } diff --git a/Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.cpp index 9025e3f..111186a 100644 --- a/Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.cpp @@ -1,31 +1,31 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.h> #include <memory> #include <Swiften/Serializer/XML/XMLElement.h> namespace Swift { MIXLeaveSerializer::MIXLeaveSerializer() { } MIXLeaveSerializer::~MIXLeaveSerializer() { } std::string MIXLeaveSerializer::serializePayload(std::shared_ptr<MIXLeave> payload) const { if (!payload) { return ""; } - XMLElement element("leave", "urn:xmpp:mix:1"); + XMLElement element("leave", "urn:xmpp:mix:0"); if (payload->getChannel()) { element.setAttribute("channel", *payload->getChannel()); } return element.serialize(); } } diff --git a/Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.cpp index 2d057ad..618e0b3 100644 --- a/Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.cpp @@ -1,33 +1,33 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.h> #include <memory> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> namespace Swift { MIXUserPreferenceSerializer::MIXUserPreferenceSerializer() { } MIXUserPreferenceSerializer::~MIXUserPreferenceSerializer() { } std::string MIXUserPreferenceSerializer::serializePayload(std::shared_ptr<MIXUserPreference> payload) const { if (!payload) { return ""; } - XMLElement element("user-preference", "urn:xmpp:mix:1"); + XMLElement element("user-preference", "urn:xmpp:mix:0"); if(payload->getData()) { element.addNode(std::make_shared<XMLRawTextNode>(FormSerializer().serialize(payload->getData()))); } return element.serialize(); } } diff --git a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXCreateSerializerTest.cpp b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXCreateSerializerTest.cpp index 78424be..80210a5 100644 --- a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXCreateSerializerTest.cpp +++ b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXCreateSerializerTest.cpp @@ -1,29 +1,29 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Serializer/PayloadSerializers/MIXCreateSerializer.h> using namespace Swift; TEST(MIXCreateSerializerTest, XEP0369_Example31) { MIXCreateSerializer testling; auto create = std::make_shared<MIXCreate>(); - std::string expectedResult = "<create xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<create xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(create)); } TEST(MIXCreateSerializerTest, XEP0369_Example66) { MIXCreateSerializer testling; auto create = std::make_shared<MIXCreate>(); create->setChannel(std::string("coven")); - std::string expectedResult = "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<create channel=\"coven\" xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(create)); } diff --git a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXDestroySerializerTest.cpp b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXDestroySerializerTest.cpp index e9cfa8b..5b21873 100644 --- a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXDestroySerializerTest.cpp +++ b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXDestroySerializerTest.cpp @@ -1,21 +1,21 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Serializer/PayloadSerializers/MIXDestroySerializer.h> using namespace Swift; TEST(MIXDestroySerializerTest, XEP0369_Example31) { MIXDestroySerializer testling; auto destroy = std::make_shared<MIXDestroy>(); destroy->setChannel(std::string("coven")); - std::string expectedResult = "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<destroy channel=\"coven\" xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(destroy)); } diff --git a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXJoinSerializerTest.cpp b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXJoinSerializerTest.cpp index 61d8a4a..ff8aa70 100644 --- a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXJoinSerializerTest.cpp +++ b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXJoinSerializerTest.cpp @@ -2,194 +2,194 @@ * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Serializer/PayloadSerializers/MIXJoinSerializer.h> using namespace Swift; TEST(MIXJoinSerializerTest, XEP0369_Example22) { MIXJoinSerializer testling; auto join = std::make_shared<MIXJoin>(); join->setChannel(JID("coven@mix.shakespeare.example")); std::shared_ptr<MIXSubscribe> node1(new MIXSubscribe()); node1->setNode(std::string("urn:xmpp:mix:nodes:messages")); join->addSubscription(node1); std::shared_ptr<MIXSubscribe> node2(new MIXSubscribe()); node2->setNode(std::string("urn:xmpp:mix:nodes:presence")); join->addSubscription(node2); std::shared_ptr<MIXSubscribe> node3(new MIXSubscribe()); node3->setNode(std::string("urn:xmpp:mix:nodes:participants")); join->addSubscription(node3); std::shared_ptr<MIXSubscribe> node4(new MIXSubscribe()); node4->setNode(std::string("urn:xmpp:mix:nodes:config")); join->addSubscription(node4); - std::string expectedResult = "<join channel=\"coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<join channel=\"coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>"; ASSERT_EQ(expectedResult, testling.serialize(join)); } TEST(MIXJoinSerializerTest, XEP0369_Example23) { MIXJoinSerializer testling; std::shared_ptr<MIXJoin> join(new MIXJoin()); std::shared_ptr<MIXSubscribe> node1(new MIXSubscribe()); node1->setNode(std::string("urn:xmpp:mix:nodes:messages")); join->addSubscription(node1); std::shared_ptr<MIXSubscribe> node2(new MIXSubscribe()); node2->setNode(std::string("urn:xmpp:mix:nodes:presence")); join->addSubscription(node2); std::shared_ptr<MIXSubscribe> node3(new MIXSubscribe()); node3->setNode(std::string("urn:xmpp:mix:nodes:participants")); join->addSubscription(node3); std::shared_ptr<MIXSubscribe> node4(new MIXSubscribe()); node4->setNode(std::string("urn:xmpp:mix:nodes:config")); join->addSubscription(node4); - std::string expectedResult = "<join xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<join xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>"; ASSERT_EQ(expectedResult, testling.serialize(join)); } TEST(MIXJoinSerializerTest, XEP0369_Example24) { MIXJoinSerializer testling; std::shared_ptr<MIXJoin> join(new MIXJoin()); join->setJID(JID("123456#coven@mix.shakespeare.example")); std::shared_ptr<MIXSubscribe> node1(new MIXSubscribe()); node1->setNode(std::string("urn:xmpp:mix:nodes:messages")); join->addSubscription(node1); std::shared_ptr<MIXSubscribe> node2(new MIXSubscribe()); node2->setNode(std::string("urn:xmpp:mix:nodes:presence")); join->addSubscription(node2); std::shared_ptr<MIXSubscribe> node3(new MIXSubscribe()); node3->setNode(std::string("urn:xmpp:mix:nodes:participants")); join->addSubscription(node3); std::shared_ptr<MIXSubscribe> node4(new MIXSubscribe()); node4->setNode(std::string("urn:xmpp:mix:nodes:config")); join->addSubscription(node4); - std::string expectedResult = "<join jid=\"123456#coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<join jid=\"123456#coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:participants\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:config\"/>" "</join>"; ASSERT_EQ(expectedResult, testling.serialize(join)); } TEST(MIXJoinSerializerTest, XEP0369_Example29) { MIXJoinSerializer testling; std::shared_ptr<MIXJoin> join(new MIXJoin()); std::shared_ptr<MIXSubscribe> node1(new MIXSubscribe()); node1->setNode(std::string("urn:xmpp:mix:nodes:messages")); join->addSubscription(node1); std::shared_ptr<MIXSubscribe> node2(new MIXSubscribe()); node2->setNode(std::string("urn:xmpp:mix:nodes:presence")); join->addSubscription(node2); std::shared_ptr<Form> parameters(std::make_shared<Form>()); parameters->setType(Form::Type::SubmitType); std::shared_ptr<FormField> fieldType = std::make_shared<FormField>(FormField::HiddenType); fieldType->setName("FORM_TYPE"); - fieldType->addValue("urn:xmpp:mix:1"); + fieldType->addValue("urn:xmpp:mix:0"); parameters->addField(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = std::make_shared<FormField>(); fieldJIDVisibility->setName("JID Visibility"); fieldJIDVisibility->addValue("never"); parameters->addField(fieldJIDVisibility); join->setForm(parameters); - std::string expectedResult = "<join xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<join xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<x type=\"submit\" xmlns=\"jabber:x:data\">" "<field type=\"hidden\" var=\"FORM_TYPE\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"JID Visibility\">" "<value>never</value>" "</field>" "</x>" "</join>"; ASSERT_EQ(expectedResult, testling.serialize(join)); } TEST(MIXJoinSerializerTest, XEP0369_Example30) { MIXJoinSerializer testling; std::shared_ptr<MIXJoin> join(new MIXJoin()); join->setJID(JID("hag66@shakespeare.example")); std::shared_ptr<MIXSubscribe> node1(new MIXSubscribe()); node1->setNode(std::string("urn:xmpp:mix:nodes:messages")); join->addSubscription(node1); std::shared_ptr<MIXSubscribe> node2(new MIXSubscribe()); node2->setNode(std::string("urn:xmpp:mix:nodes:presence")); join->addSubscription(node2); std::shared_ptr<Form> parameters(std::make_shared<Form>()); parameters->setType(Form::Type::ResultType); std::shared_ptr<FormField> fieldType = std::make_shared<FormField>(FormField::HiddenType); fieldType->setName("FORM_TYPE"); - fieldType->addValue("urn:xmpp:mix:1"); + fieldType->addValue("urn:xmpp:mix:0"); parameters->addField(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = std::make_shared<FormField>(); fieldJIDVisibility->setName("JID Visibility"); fieldJIDVisibility->addValue("never"); parameters->addField(fieldJIDVisibility); std::shared_ptr<FormField> fieldprivateMessages = std::make_shared<FormField>(); fieldprivateMessages->setName("Private Messages"); fieldprivateMessages->addValue("allow"); parameters->addField(fieldprivateMessages); std::shared_ptr<FormField> vCard = std::make_shared<FormField>(); vCard->setName("vCard"); vCard->addValue("block"); parameters->addField(vCard); join->setForm(parameters); - std::string expectedResult = "<join jid=\"hag66@shakespeare.example\" xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<join jid=\"hag66@shakespeare.example\" xmlns=\"urn:xmpp:mix:0\">" "<subscribe node=\"urn:xmpp:mix:nodes:messages\"/>" "<subscribe node=\"urn:xmpp:mix:nodes:presence\"/>" "<x type=\"result\" xmlns=\"jabber:x:data\">" "<field type=\"hidden\" var=\"FORM_TYPE\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"JID Visibility\">" "<value>never</value>" "</field>" "<field var=\"Private Messages\">" "<value>allow</value>" "</field>" "<field var=\"vCard\">" "<value>block</value>" "</field>" "</x>" "</join>"; ASSERT_EQ(expectedResult, testling.serialize(join)); } diff --git a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXLeaveSerializerTest.cpp b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXLeaveSerializerTest.cpp index 03e3e76..d9537a8 100644 --- a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXLeaveSerializerTest.cpp +++ b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXLeaveSerializerTest.cpp @@ -1,30 +1,30 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Serializer/PayloadSerializers/MIXLeaveSerializer.h> using namespace Swift; TEST(MIXLeaveSerializerTest, XEP0369_Example33) { MIXLeaveSerializer testling; auto leave = std::shared_ptr<MIXLeave>(new MIXLeave()); leave->setChannel(JID("coven@mix.shakespeare.example")); - std::string expectedResult = "<leave channel=\"coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<leave channel=\"coven@mix.shakespeare.example\" xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(leave)); } TEST(MIXLeaveSerializerTest, XEP0369_Example34) { MIXLeaveSerializer testling; auto leave = std::shared_ptr<MIXLeave>(new MIXLeave()); - std::string expectedResult = "<leave xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<leave xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(leave)); } diff --git a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXUserPreferenceSerializerTest.cpp b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXUserPreferenceSerializerTest.cpp index 7cbfbfc..0226b0f 100644 --- a/Swiften/Serializer/PayloadSerializers/UnitTest/MIXUserPreferenceSerializerTest.cpp +++ b/Swiften/Serializer/PayloadSerializers/UnitTest/MIXUserPreferenceSerializerTest.cpp @@ -1,68 +1,68 @@ /* * Copyright (c) 2017 Tarun Gupta * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <gtest/gtest.h> #include <Swiften/Serializer/PayloadSerializers/MIXUserPreferenceSerializer.h> #include <Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.h> using namespace Swift; TEST(MIXUserPreferenceSerializerTest, XEP0369_Example31) { MIXUserPreferenceSerializer testling; auto userpreference = std::shared_ptr<MIXUserPreference>(new MIXUserPreference()); - std::string expectedResult = "<user-preference xmlns=\"urn:xmpp:mix:1\"/>"; + std::string expectedResult = "<user-preference xmlns=\"urn:xmpp:mix:0\"/>"; ASSERT_EQ(expectedResult, testling.serialize(userpreference)); } TEST(MIXUserPreferenceSerializerTest, XEP0369_Example32) { MIXUserPreferenceSerializer testling; auto userpreference = std::shared_ptr<MIXUserPreference>(new MIXUserPreference()); std::shared_ptr<Form> parameters(std::make_shared<Form>()); parameters->setType(Form::Type::ResultType); std::shared_ptr<FormField> fieldType = std::make_shared<FormField>(FormField::HiddenType); fieldType->setName("FORM_TYPE"); - fieldType->addValue("urn:xmpp:mix:1"); + fieldType->addValue("urn:xmpp:mix:0"); parameters->addField(fieldType); std::shared_ptr<FormField> fieldJIDVisibility = std::make_shared<FormField>(); fieldJIDVisibility->setName("JID Visibility"); fieldJIDVisibility->addValue("never"); parameters->addField(fieldJIDVisibility); std::shared_ptr<FormField> fieldprivateMessages = std::make_shared<FormField>(); fieldprivateMessages->setName("Private Messages"); fieldprivateMessages->addValue("allow"); parameters->addField(fieldprivateMessages); std::shared_ptr<FormField> vCard = std::make_shared<FormField>(); vCard->setName("vCard"); vCard->addValue("block"); parameters->addField(vCard); userpreference->setData(parameters); - std::string expectedResult = "<user-preference xmlns=\"urn:xmpp:mix:1\">" + std::string expectedResult = "<user-preference xmlns=\"urn:xmpp:mix:0\">" "<x type=\"result\" xmlns=\"jabber:x:data\">" "<field type=\"hidden\" var=\"FORM_TYPE\">" - "<value>urn:xmpp:mix:1</value>" + "<value>urn:xmpp:mix:0</value>" "</field>" "<field var=\"JID Visibility\">" "<value>never</value>" "</field>" "<field var=\"Private Messages\">" "<value>allow</value>" "</field>" "<field var=\"vCard\">" "<value>block</value>" "</field>" "</x>" "</user-preference>"; ASSERT_EQ(expectedResult, testling.serialize(userpreference)); } |