summaryrefslogtreecommitdiff
path: root/libtmdb/testFormatUrls.cpp
diff options
context:
space:
mode:
authorrandomdan <randomdan@localhost>2014-09-19 23:52:30 +0000
committerrandomdan <randomdan@localhost>2014-09-19 23:52:30 +0000
commit28691c29e93fbc4fdb5ae4866287282840fba021 (patch)
tree8b83ca80afc3f3a5d11b04a56c440d2aa38f4e16 /libtmdb/testFormatUrls.cpp
parentSupport muxing directly in storage (diff)
downloadp2pvr-28691c29e93fbc4fdb5ae4866287282840fba021.tar.bz2
p2pvr-28691c29e93fbc4fdb5ae4866287282840fba021.tar.xz
p2pvr-28691c29e93fbc4fdb5ae4866287282840fba021.zip
First bash at a slicer ice proxy for TMDb and an untested instantiation in p2pvr's core adapter
Diffstat (limited to 'libtmdb/testFormatUrls.cpp')
-rw-r--r--libtmdb/testFormatUrls.cpp58
1 files changed, 58 insertions, 0 deletions
diff --git a/libtmdb/testFormatUrls.cpp b/libtmdb/testFormatUrls.cpp
new file mode 100644
index 0000000..f3aa2a8
--- /dev/null
+++ b/libtmdb/testFormatUrls.cpp
@@ -0,0 +1,58 @@
+#define BOOST_TEST_MODULE FormatUrls
+#include <boost/test/included/unit_test.hpp>
+
+#define private public
+#define protected public
+
+#include "tmdb-proxy.h"
+
+const std::string MockBase = "http://private-5513-themoviedb.apiary-mock.com/3";
+const std::string ApiKey = "48b32823d2b60c5c1085af36daed03fa";
+
+BOOST_AUTO_TEST_CASE( initialize_simple_proxy )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_simple )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl<int>("/something/%d", 23, { });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something/23?apikey=48b32823d2b60c5c1085af36daed03fa", url);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_query )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl<int>("/something/%d", 23, { { "page", 5 } });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something/23?apikey=48b32823d2b60c5c1085af36daed03fa&page=5", url);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_multiple )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl("/something", { { "page", 5}, {"query", "string" } });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something?apikey=48b32823d2b60c5c1085af36daed03fa&page=5&query=string", url);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_escaped )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl("/something", { { "query", "sample string" } });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something?apikey=48b32823d2b60c5c1085af36daed03fa&query=sample%20string", url);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_optionalvalue )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl("/something", { { "query", IceUtil::Optional<Ice::Int>(10) } });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something?apikey=48b32823d2b60c5c1085af36daed03fa&query=10", url);
+}
+
+BOOST_AUTO_TEST_CASE( format_url_optionalnovalue )
+{
+ TMDb::Proxy test(MockBase, ApiKey);
+ auto url = test.GetUrl("/something", { { "query", IceUtil::Optional<Ice::Int>() } });
+ BOOST_REQUIRE_EQUAL("http://private-5513-themoviedb.apiary-mock.com/3/something?apikey=48b32823d2b60c5c1085af36daed03fa", url);
+}
+