summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAlex Gleason <alex@alexgleason.me>2020-08-02 14:53:42 -0500
committerAlex Gleason <alex@alexgleason.me>2020-08-02 14:53:42 -0500
commitdc88b6f0919cf5686af7d5b935e8ee462491704b (patch)
tree04dfcf531841f02036f7daa173796eb1727eb83a /test
parent70951d042b5d7b12608a3f73a73c757fc4204449 (diff)
downloadpleroma-dc88b6f0919cf5686af7d5b935e8ee462491704b.tar.gz
pleroma-dc88b6f0919cf5686af7d5b935e8ee462491704b.zip
Add email blacklist, fixes #1404
Diffstat (limited to 'test')
-rw-r--r--test/user_test.exs23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/user_test.exs b/test/user_test.exs
index 904cea536..7c45e69e7 100644
--- a/test/user_test.exs
+++ b/test/user_test.exs
@@ -490,6 +490,29 @@ defmodule Pleroma.UserTest do
refute changeset.valid?
end
+ test "it blocks blacklisted email domains" do
+ clear_config([User, :email_blacklist], ["trolling.world"])
+
+ # Block with match
+ params = Map.put(@full_user_data, :email, "troll@trolling.world")
+ changeset = User.register_changeset(%User{}, params)
+ refute changeset.valid?
+
+ # Block with subdomain match
+ params = Map.put(@full_user_data, :email, "troll@gnomes.trolling.world")
+ changeset = User.register_changeset(%User{}, params)
+ refute changeset.valid?
+
+ # Pass with different domains that are similar
+ params = Map.put(@full_user_data, :email, "troll@gnomestrolling.world")
+ changeset = User.register_changeset(%User{}, params)
+ assert changeset.valid?
+
+ params = Map.put(@full_user_data, :email, "troll@trolling.world.us")
+ changeset = User.register_changeset(%User{}, params)
+ assert changeset.valid?
+ end
+
test "it sets the password_hash and ap_id" do
changeset = User.register_changeset(%User{}, @full_user_data)