Make user bio optional
authorEkaterina Vaartis <vaartis@cock.li>
Wed, 21 Feb 2018 20:31:57 +0000 (23:31 +0300)
committerEkaterina Vaartis <vaartis@cock.li>
Wed, 21 Feb 2018 20:31:57 +0000 (23:31 +0300)
lib/pleroma/user.ex
test/user_test.exs

index 81cec82656ddfe90d3ddd875ae4224ddb158ab6c..59f6340b847448063f75ea43560934afd19f3628 100644 (file)
@@ -93,7 +93,7 @@ defmodule Pleroma.User do
     |> cast(params, [:bio, :name])
     |> unique_constraint(:nickname)
     |> validate_format(:nickname, ~r/^[a-zA-Z\d]+$/)
-    |> validate_length(:bio, min: 1, max: 1000)
+    |> validate_length(:bio, max: 1000)
     |> validate_length(:name, min: 1, max: 100)
   end
 
@@ -119,13 +119,13 @@ defmodule Pleroma.User do
   def register_changeset(struct, params \\ %{}) do
     changeset = struct
     |> cast(params, [:bio, :email, :name, :nickname, :password, :password_confirmation])
-    |> validate_required([:bio, :email, :name, :nickname, :password, :password_confirmation])
+    |> validate_required([:email, :name, :nickname, :password, :password_confirmation])
     |> validate_confirmation(:password)
     |> unique_constraint(:email)
     |> unique_constraint(:nickname)
     |> validate_format(:nickname, ~r/^[a-zA-Z\d]+$/)
     |> validate_format(:email, @email_regex)
-    |> validate_length(:bio, min: 1, max: 1000)
+    |> validate_length(:bio, max: 1000)
     |> validate_length(:name, min: 1, max: 100)
 
     if changeset.valid? do
index 0c87b778c7dcdc38b093052e05d000d5708adc47..6bfdfe1bf7083a477c8afa014a23e5f4cc5b7a4b 100644 (file)
@@ -101,13 +101,14 @@ defmodule Pleroma.UserTest do
       email: "email@example.com"
     }
 
-    test "it requires a bio, email, name, nickname and password" do
+    test "it requires an email, name, nickname and password, bio is optional" do
       @full_user_data
       |> Map.keys
       |> Enum.each(fn (key) ->
         params = Map.delete(@full_user_data, key)
         changeset = User.register_changeset(%User{}, params)
-        assert changeset.valid? == false
+
+        assert (if key == :bio, do: changeset.valid?, else: not changeset.valid?)
       end)
     end