summaryrefslogtreecommitdiff
path: root/test/http_test.exs
diff options
context:
space:
mode:
authorkaniini <nenolod@gmail.com>2018-12-04 18:41:00 +0000
committerkaniini <nenolod@gmail.com>2018-12-04 18:41:00 +0000
commit114b95cee20c9bb4922627e5397a70d60e905fa6 (patch)
treea188264fd550f9473ee3f1faa74d56ca9fd319fc /test/http_test.exs
parent4a602230e4b95e916b3df73bd88413b245e07de0 (diff)
parenta9e3e387c9798a810f82bbf92023b4d29abffbe5 (diff)
downloadpleroma-114b95cee20c9bb4922627e5397a70d60e905fa6.tar.gz
pleroma-114b95cee20c9bb4922627e5397a70d60e905fa6.zip
Merge branch 'feature/integration_tesla' into 'develop'
[#354] Move all http interactions to Tesla See merge request pleroma/pleroma!487
Diffstat (limited to 'test/http_test.exs')
-rw-r--r--test/http_test.exs55
1 files changed, 55 insertions, 0 deletions
diff --git a/test/http_test.exs b/test/http_test.exs
new file mode 100644
index 000000000..62f3ccb30
--- /dev/null
+++ b/test/http_test.exs
@@ -0,0 +1,55 @@
+defmodule Pleroma.HTTPTest do
+ use Pleroma.DataCase
+ import Tesla.Mock
+
+ setup do
+ mock(fn
+ %{
+ method: :get,
+ url: "http://example.com/hello",
+ headers: [{"content-type", "application/json"}]
+ } ->
+ json(%{"my" => "data"})
+
+ %{method: :get, url: "http://example.com/hello"} ->
+ %Tesla.Env{status: 200, body: "hello"}
+
+ %{method: :post, url: "http://example.com/world"} ->
+ %Tesla.Env{status: 200, body: "world"}
+ end)
+
+ :ok
+ end
+
+ describe "get/1" do
+ test "returns successfully result" do
+ assert Pleroma.HTTP.get("http://example.com/hello") == {
+ :ok,
+ %Tesla.Env{status: 200, body: "hello"}
+ }
+ end
+ end
+
+ describe "get/2 (with headers)" do
+ test "returns successfully result for json content-type" do
+ assert Pleroma.HTTP.get("http://example.com/hello", [{"content-type", "application/json"}]) ==
+ {
+ :ok,
+ %Tesla.Env{
+ status: 200,
+ body: "{\"my\":\"data\"}",
+ headers: [{"content-type", "application/json"}]
+ }
+ }
+ end
+ end
+
+ describe "post/2" do
+ test "returns successfully result" do
+ assert Pleroma.HTTP.post("http://example.com/world", "") == {
+ :ok,
+ %Tesla.Env{status: 200, body: "world"}
+ }
+ end
+ end
+end