Pleroma/test/web/rich_media/parser_test.exs

34 lines
916 B
Elixir
Raw Normal View History

2019-01-01 21:26:40 +01:00
defmodule Pleroma.Web.RichMedia.ParserTest do
use ExUnit.Case, async: true
setup do
Tesla.Mock.mock(fn
%{
method: :get,
url: "http://example.com/ogp"
} ->
%Tesla.Env{status: 200, body: File.read!("test/fixtures/rich_media/ogp.html")}
2019-01-02 15:02:50 +01:00
%{method: :get, url: "http://example.com/empty"} ->
%Tesla.Env{status: 200, body: "hello"}
2019-01-01 21:26:40 +01:00
end)
:ok
end
2019-01-02 15:02:50 +01:00
test "returns error when no metadata present" do
assert {:error, _} = Pleroma.Web.RichMedia.Parser.parse("http://example.com/empty")
end
2019-01-01 21:26:40 +01:00
test "parses ogp" do
assert Pleroma.Web.RichMedia.Parser.parse("http://example.com/ogp") ==
2019-01-02 15:02:50 +01:00
{:ok,
%{
image: "http://ia.media-imdb.com/images/rock.jpg",
title: "The Rock",
type: "video.movie",
url: "http://www.imdb.com/title/tt0117500/"
}}
2019-01-01 21:26:40 +01:00
end
end