diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/web/rich_media/parsers/twitter_card_test.exs | 130 | 
1 files changed, 72 insertions, 58 deletions
| diff --git a/test/web/rich_media/parsers/twitter_card_test.exs b/test/web/rich_media/parsers/twitter_card_test.exs index 87c767c15..3ccf26651 100644 --- a/test/web/rich_media/parsers/twitter_card_test.exs +++ b/test/web/rich_media/parsers/twitter_card_test.exs @@ -7,8 +7,7 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do    alias Pleroma.Web.RichMedia.Parsers.TwitterCard    test "returns error when html not contains twitter card" do -    assert TwitterCard.parse([{"html", [], [{"head", [], []}, {"body", [], []}]}], %{}) == -             {:error, "No twitter card metadata found"} +    assert TwitterCard.parse([{"html", [], [{"head", [], []}, {"body", [], []}]}], %{}) == %{}    end    test "parses twitter card with only name attributes" do @@ -17,15 +16,21 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do        |> Floki.parse_document!()      assert TwitterCard.parse(html, %{}) == -             {:ok, -              %{ -                "app:id:googleplay": "com.nytimes.android", -                "app:name:googleplay": "NYTimes", -                "app:url:googleplay": "nytimes://reader/id/100000006583622", -                site: nil, -                title: -                  "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database. - The New York Times" -              }} +             %{ +               "app:id:googleplay": "com.nytimes.android", +               "app:name:googleplay": "NYTimes", +               "app:url:googleplay": "nytimes://reader/id/100000006583622", +               site: nil, +               description: +                 "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", +               image: +                 "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-facebookJumbo.jpg", +               type: "article", +               url: +                 "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html", +               title: +                 "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database." +             }    end    test "parses twitter card with only property attributes" do @@ -34,19 +39,19 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do        |> Floki.parse_document!()      assert TwitterCard.parse(html, %{}) == -             {:ok, -              %{ -                card: "summary_large_image", -                description: -                  "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", -                image: -                  "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-videoSixteenByNineJumbo1600.jpg", -                "image:alt": "", -                title: -                  "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database.", -                url: -                  "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html" -              }} +             %{ +               card: "summary_large_image", +               description: +                 "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", +               image: +                 "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-videoSixteenByNineJumbo1600.jpg", +               "image:alt": "", +               title: +                 "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database.", +               url: +                 "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html", +               type: "article" +             }    end    test "parses twitter card with name & property attributes" do @@ -55,23 +60,23 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do        |> Floki.parse_document!()      assert TwitterCard.parse(html, %{}) == -             {:ok, -              %{ -                "app:id:googleplay": "com.nytimes.android", -                "app:name:googleplay": "NYTimes", -                "app:url:googleplay": "nytimes://reader/id/100000006583622", -                card: "summary_large_image", -                description: -                  "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", -                image: -                  "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-videoSixteenByNineJumbo1600.jpg", -                "image:alt": "", -                site: nil, -                title: -                  "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database.", -                url: -                  "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html" -              }} +             %{ +               "app:id:googleplay": "com.nytimes.android", +               "app:name:googleplay": "NYTimes", +               "app:url:googleplay": "nytimes://reader/id/100000006583622", +               card: "summary_large_image", +               description: +                 "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", +               image: +                 "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-videoSixteenByNineJumbo1600.jpg", +               "image:alt": "", +               site: nil, +               title: +                 "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database.", +               url: +                 "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html", +               type: "article" +             }    end    test "respect only first title tag on the page" do @@ -84,14 +89,17 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do        File.read!("test/fixtures/margaret-corbin-grave-west-point.html") |> Floki.parse_document!()      assert TwitterCard.parse(html, %{}) == -             {:ok, -              %{ -                site: "@atlasobscura", -                title: -                  "The Missing Grave of Margaret Corbin, Revolutionary War Veteran - Atlas Obscura", -                card: "summary_large_image", -                image: image_path -              }} +             %{ +               site: "@atlasobscura", +               title: "The Missing Grave of Margaret Corbin, Revolutionary War Veteran", +               card: "summary_large_image", +               image: image_path, +               description: +                 "She's the only woman veteran honored with a monument at West Point. But where was she buried?", +               site_name: "Atlas Obscura", +               type: "article", +               url: "http://www.atlasobscura.com/articles/margaret-corbin-grave-west-point" +             }    end    test "takes first founded title in html head if there is html markup error" do @@ -100,14 +108,20 @@ defmodule Pleroma.Web.RichMedia.Parsers.TwitterCardTest do        |> Floki.parse_document!()      assert TwitterCard.parse(html, %{}) == -             {:ok, -              %{ -                site: nil, -                title: -                  "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database. - The New York Times", -                "app:id:googleplay": "com.nytimes.android", -                "app:name:googleplay": "NYTimes", -                "app:url:googleplay": "nytimes://reader/id/100000006583622" -              }} +             %{ +               site: nil, +               title: +                 "She Was Arrested at 14. Then Her Photo Went to a Facial Recognition Database.", +               "app:id:googleplay": "com.nytimes.android", +               "app:name:googleplay": "NYTimes", +               "app:url:googleplay": "nytimes://reader/id/100000006583622", +               description: +                 "With little oversight, the N.Y.P.D. has been using powerful surveillance technology on photos of children and teenagers.", +               image: +                 "https://static01.nyt.com/images/2019/08/01/nyregion/01nypd-juveniles-promo/01nypd-juveniles-promo-facebookJumbo.jpg", +               type: "article", +               url: +                 "https://www.nytimes.com/2019/08/01/nyregion/nypd-facial-recognition-children-teenagers.html" +             }    end  end | 
