File tree Expand file tree Collapse file tree 2 files changed +14
-3
lines changed
Expand file tree Collapse file tree 2 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -63,6 +63,17 @@ defmodule CodeCorps.UserTest do
6363 refute changeset . valid?
6464 assert_error_message ( changeset , :username , "has already been taken" )
6565 end
66+
67+ test "allows setting state to 'signed_up_donating'" do
68+ attrs = @ valid_attrs |> Map . put ( :state , "signed_up_donating" )
69+ changeset = User . registration_changeset ( % User { } , attrs )
70+ assert changeset . valid?
71+ assert changeset |> Ecto.Changeset . get_change ( :state ) == "signed_up_donating"
72+
73+ attrs = @ valid_attrs |> Map . put ( :state , "selected_skills" )
74+ changeset = User . registration_changeset ( % User { } , attrs )
75+ refute changeset . valid?
76+ end
6677 end
6778
6879 describe "update_changeset" do
Original file line number Diff line number Diff line change @@ -71,11 +71,11 @@ defmodule CodeCorps.User do
7171 def registration_changeset ( struct , params ) do
7272 struct
7373 |> changeset ( params )
74- |> cast ( params , [ :password , :username ] )
75- |> validate_required ( :password )
76- |> validate_required ( :username )
74+ |> cast ( params , [ :password , :username , :state ] )
75+ |> validate_required ( [ :password , :username ] )
7776 |> validate_length ( :password , min: 6 )
7877 |> validate_length ( :username , min: 1 , max: 39 )
78+ |> validate_inclusion ( :state , [ "signed_up_donating" ] )
7979 |> validate_slug ( :username )
8080 |> unique_constraint ( :username , name: :users_lower_username_index )
8181 |> unique_constraint ( :email )
You can’t perform that action at this time.
0 commit comments