diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/html_test.exs | 53 | 
1 files changed, 53 insertions, 0 deletions
| diff --git a/test/html_test.exs b/test/html_test.exs index 08738276e..64513980b 100644 --- a/test/html_test.exs +++ b/test/html_test.exs @@ -4,8 +4,12 @@  defmodule Pleroma.HTMLTest do    alias Pleroma.HTML +  alias Pleroma.Object +  alias Pleroma.Web.CommonAPI    use Pleroma.DataCase +  import Pleroma.Factory +    @html_sample """      <b>this is in bold</b>      <p>this is a paragraph</p> @@ -160,4 +164,53 @@ defmodule Pleroma.HTMLTest do                 )      end    end + +  describe "extract_first_external_url" do +    test "extracts the url" do +      user = insert(:user) + +      {:ok, activity} = +        CommonAPI.post(user, %{ +          "status" => +            "I think I just found the best github repo https://github.com/komeiji-satori/Dress" +        }) + +      object = Object.normalize(activity) +      {:ok, url} = HTML.extract_first_external_url(object, object.data["content"]) +      assert url == "https://github.com/komeiji-satori/Dress" +    end + +    test "skips mentions" do +      user = insert(:user) +      other_user = insert(:user) + +      {:ok, activity} = +        CommonAPI.post(user, %{ +          "status" => +            "@#{other_user.nickname} install misskey! https://github.com/syuilo/misskey/blob/develop/docs/setup.en.md" +        }) + +      object = Object.normalize(activity) +      {:ok, url} = HTML.extract_first_external_url(object, object.data["content"]) + +      assert url == "https://github.com/syuilo/misskey/blob/develop/docs/setup.en.md" + +      refute url == other_user.ap_id +    end + +    test "skips hashtags" do +      user = insert(:user) + +      {:ok, activity} = +        CommonAPI.post(user, %{ +          "status" => +            "#cofe https://www.pixiv.net/member_illust.php?mode=medium&illust_id=72255140" +        }) + +      object = Object.normalize(activity) +      {:ok, url} = HTML.extract_first_external_url(object, object.data["content"]) + +      assert url == "https://www.pixiv.net/member_illust.php?mode=medium&illust_id=72255140" +    end +  end  end | 
