diff options
author | kaniini <nenolod@gmail.com> | 2018-12-04 18:41:00 +0000 |
---|---|---|
committer | kaniini <nenolod@gmail.com> | 2018-12-04 18:41:00 +0000 |
commit | 114b95cee20c9bb4922627e5397a70d60e905fa6 (patch) | |
tree | a188264fd550f9473ee3f1faa74d56ca9fd319fc /test/http_test.exs | |
parent | 4a602230e4b95e916b3df73bd88413b245e07de0 (diff) | |
parent | a9e3e387c9798a810f82bbf92023b4d29abffbe5 (diff) | |
download | pleroma-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.exs | 55 |
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 |