summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorEgor Kislitsyn <egor@kislitsyn.com>2019-06-13 15:02:46 +0700
committerEgor Kislitsyn <egor@kislitsyn.com>2019-06-13 15:02:46 +0700
commita12f8e13c8f3cd176989c28810ff578bf7c09c69 (patch)
tree0f09c6d77094332a0094632745ebeb652f6732f1 /test
parent7363a0ea8aa5c034e0335e826c081f1166e71f92 (diff)
downloadpleroma-a12f8e13c8f3cd176989c28810ff578bf7c09c69.tar.gz
pleroma-a12f8e13c8f3cd176989c28810ff578bf7c09c69.zip
Improve <title> fallback; Add a test
Diffstat (limited to 'test')
-rw-r--r--test/fixtures/rich_media/ogp-missing-title.html12
-rw-r--r--test/web/rich_media/parser_test.exs22
2 files changed, 34 insertions, 0 deletions
diff --git a/test/fixtures/rich_media/ogp-missing-title.html b/test/fixtures/rich_media/ogp-missing-title.html
new file mode 100644
index 000000000..fcdbedfc6
--- /dev/null
+++ b/test/fixtures/rich_media/ogp-missing-title.html
@@ -0,0 +1,12 @@
+<html prefix="og: http://ogp.me/ns#">
+
+<head>
+ <title>The Rock (1996)</title>
+ <meta property="og:type" content="video.movie" />
+ <meta property="og:url" content="http://www.imdb.com/title/tt0117500/" />
+ <meta property="og:image" content="http://ia.media-imdb.com/images/rock.jpg" />
+ <meta property="og:description"
+ content="Directed by Michael Bay. With Sean Connery, Nicolas Cage, Ed Harris, John Spencer.">
+</head>
+
+</html>
diff --git a/test/web/rich_media/parser_test.exs b/test/web/rich_media/parser_test.exs
index 3a9cc1854..a49ba9549 100644
--- a/test/web/rich_media/parser_test.exs
+++ b/test/web/rich_media/parser_test.exs
@@ -11,6 +11,15 @@ defmodule Pleroma.Web.RichMedia.ParserTest do
%{
method: :get,
+ url: "http://example.com/ogp-missing-title"
+ } ->
+ %Tesla.Env{
+ status: 200,
+ body: File.read!("test/fixtures/rich_media/ogp-missing-title.html")
+ }
+
+ %{
+ method: :get,
url: "http://example.com/twitter-card"
} ->
%Tesla.Env{status: 200, body: File.read!("test/fixtures/rich_media/twitter_card.html")}
@@ -51,6 +60,19 @@ defmodule Pleroma.Web.RichMedia.ParserTest do
}}
end
+ test "falls back to <title> when ogp:title is missing" do
+ assert Pleroma.Web.RichMedia.Parser.parse("http://example.com/ogp-missing-title") ==
+ {:ok,
+ %{
+ image: "http://ia.media-imdb.com/images/rock.jpg",
+ title: "The Rock (1996)",
+ description:
+ "Directed by Michael Bay. With Sean Connery, Nicolas Cage, Ed Harris, John Spencer.",
+ type: "video.movie",
+ url: "http://www.imdb.com/title/tt0117500/"
+ }}
+ end
+
test "parses twitter card" do
assert Pleroma.Web.RichMedia.Parser.parse("http://example.com/twitter-card") ==
{:ok,