Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/SpectrumIM/spectrum2.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitaly Takmazov <vitalyster@gmail.com>2022-02-06 04:33:05 +0300
committerVitaly Takmazov <vitalyster@gmail.com>2022-02-06 04:33:05 +0300
commit8a1b3a70ef05b2d2191a9fecc8007bfeba3f0f60 (patch)
treed61c311ad0f5357ee21303d9dc9edd1bf600b3da
parent44a322044c9a6ec3beb350b63253c3f2b81049ea (diff)
Fix tests
-rw-r--r--libtransport/NetworkPluginServer.cpp17
-rw-r--r--tests/libtransport/networkpluginserver.cpp2
2 files changed, 12 insertions, 7 deletions
diff --git a/libtransport/NetworkPluginServer.cpp b/libtransport/NetworkPluginServer.cpp
index 86794db1..59be6df2 100644
--- a/libtransport/NetworkPluginServer.cpp
+++ b/libtransport/NetworkPluginServer.cpp
@@ -47,6 +47,7 @@
#include "Swiften/Elements/InvisiblePayload.h"
#include "Swiften/Elements/SpectrumErrorPayload.h"
#include "Swiften/Elements/RawXMLPayload.h"
+#include <Swiften/Serializer/XML/XMLElement.h>
#include "boost/date_time/posix_time/posix_time.hpp"
#include <boost/regex.hpp>
@@ -1732,12 +1733,16 @@ enum OobMode {
};
void NetworkPluginServer::addOobPayload(Swift::Message::ref message, const std::string &url, const std::string &description) {
- //Add OOB tag
- std::shared_ptr<Swift::RawXMLPayload>
- oob_payload(new Swift::RawXMLPayload(
- "<x xmlns='jabber:x:oob'><url>" + url + "</url>" + "<desc>" + description + "</desc>" + "</x>"));
- // todo: add the payload itself as a caption
- message->addPayload(oob_payload);
+ const std::string OOB_NAMESPACE = "jabber:x:oob";
+ std::shared_ptr<Swift::XMLElement> oobElement = std::make_shared<Swift::XMLElement>("x", OOB_NAMESPACE);
+ std::shared_ptr<Swift::XMLElement> urlNode = std::make_shared<Swift::XMLElement>("url", "", url);
+ oobElement->addNode(urlNode);
+ if (!description.empty()) {
+ std::shared_ptr<Swift::XMLElement> descNode = std::make_shared<Swift::XMLElement>("desc");
+ oobElement->addNode(descNode);
+ }
+ std::shared_ptr<Swift::RawXMLPayload> oobPayload = std::make_shared<Swift::RawXMLPayload>(oobElement->serialize());
+ message->addPayload(oobPayload);
}
std::vector<std::shared_ptr<Swift::Message> >
diff --git a/tests/libtransport/networkpluginserver.cpp b/tests/libtransport/networkpluginserver.cpp
index 3e280272..a78aa463 100644
--- a/tests/libtransport/networkpluginserver.cpp
+++ b/tests/libtransport/networkpluginserver.cpp
@@ -41,7 +41,7 @@ class Clock {
static const std::string OOB_TEST_BODY = "Test message http://example.org/example1.png more text https://example.org/example2.png final text";
static const std::string OOB_TEST_XHTML = "Test message <img src='http://example.org/example1.png' /> more text <img src=\"https://example.org/example2.png\"> final text";
-static const std::string OOB_XML_START = "<x xmlns='jabber:x:oob'><url>";
+static const std::string OOB_XML_START = "<x xmlns=\"jabber:x:oob\"><url>";
static const std::string OOB_XML_END = "</url></x>";
class NetworkPluginServerTest : public CPPUNIT_NS :: TestFixture, public BasicTest {