Files
@ d7ffa366e13b
Branch filter:
Location: libtransport.git/tests/libtransport/HTTPRequest.cpp - annotation
d7ffa366e13b
1.9 KiB
text/x-c++hdr
libcommuni IRC backend: support multi-lines messages
... by splitting them into one PRIVMSG command per line.
... by splitting them into one PRIVMSG command per line.
ee2e261f6b2b 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 19106c7ec482 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 19106c7ec482 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 ee2e261f6b2b ee2e261f6b2b ee2e261f6b2b 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 36cb102b9350 | #include <boost/thread/thread.hpp>
#include <cppunit/TestFixture.h>
#include <cppunit/extensions/HelperMacros.h>
#include <Swiften/Swiften.h>
#include <Swiften/EventLoop/DummyEventLoop.h>
#include <Swiften/Server/Server.h>
#include <Swiften/Network/DummyNetworkFactories.h>
#include <Swiften/Network/DummyConnectionServer.h>
#include <Swiften/Elements/VCardUpdate.h>
#include "Swiften/Server/ServerStanzaChannel.h"
#include "Swiften/Server/ServerFromClientSession.h"
#include "Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.h"
#include "basictest.h"
#include "transport/ThreadPool.h"
#include "transport/HTTPRequest.h"
using namespace Transport;
#if !HAVE_SWIFTEN_3
#define get_value_or(X) substr()
#endif
class HTTPRequestTest : public CPPUNIT_NS :: TestFixture, public BasicTest {
CPPUNIT_TEST_SUITE(HTTPRequestTest);
CPPUNIT_TEST(GETThreadPool);
CPPUNIT_TEST_SUITE_END();
public:
ThreadPool *tp;
bool result;
void setUp (void) {
setMeUp();
tp = new ThreadPool(loop, 10);
result = false;
}
void tearDown (void) {
tearMeDown();
delete tp;
}
void handleResult(HTTPRequest *req, bool ok, Json::Value &resp, const std::string &data) {
result = true;
}
void GET() {
Json::Value resp;
HTTPRequest *req = new HTTPRequest(tp, HTTPRequest::Get, "http://spectrum.im/params.json", boost::bind(&HTTPRequestTest::handleResult, this, _1, _2, _3, _4));
req->execute(resp);
delete req;
}
void GETThreadPool() {
HTTPRequest *req = new HTTPRequest(tp, HTTPRequest::Get, "http://spectrum.im/params.json", boost::bind(&HTTPRequestTest::handleResult, this, _1, _2, _3, _4));
req->execute();
int i = 0;
while (result == false && i < 5) {
boost::system_time time = boost::get_system_time();
time += boost::posix_time::seconds(1);
boost::thread::sleep(time);
loop->processEvents();
i++;
}
CPPUNIT_ASSERT(result);
}
};
CPPUNIT_TEST_SUITE_REGISTRATION (HTTPRequestTest);
|