# Pleroma: A lightweight social networking server # Copyright © 2017-2020 Pleroma Authors # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.EctoType.ActivityPub.ObjectValidators.SafeTextTest do use Pleroma.DataCase, async: true alias Pleroma.EctoType.ActivityPub.ObjectValidators.SafeText test "it lets normal text go through" do text = "hey how are you" assert {:ok, text} == SafeText.cast(text) end test "it removes html tags from text" do text = "hey look xss " assert {:ok, "hey look xss alert('foo')"} == SafeText.cast(text) end test "it keeps basic html tags" do text = "hey look xss " assert {:ok, "hey look xss alert('foo')"} == SafeText.cast(text) end test "errors for non-text" do assert :error == SafeText.cast(1) end end