diff --git a/copi.owasp.org/lib/copi/cornucopia/vote.ex b/copi.owasp.org/lib/copi/cornucopia/vote.ex index 9cd451776..cb72deb18 100644 --- a/copi.owasp.org/lib/copi/cornucopia/vote.ex +++ b/copi.owasp.org/lib/copi/cornucopia/vote.ex @@ -12,7 +12,7 @@ defmodule Copi.Cornucopia.Vote do @doc false def changeset(vote, attrs) do vote - |> cast(attrs, []) - |> validate_required([]) + |> cast(attrs, [:dealt_card_id, :player_id]) + |> validate_required([:dealt_card_id, :player_id]) end end diff --git a/copi.owasp.org/test/copi/cornucopia/vote_test.exs b/copi.owasp.org/test/copi/cornucopia/vote_test.exs new file mode 100644 index 000000000..114dc4bed --- /dev/null +++ b/copi.owasp.org/test/copi/cornucopia/vote_test.exs @@ -0,0 +1,22 @@ +defmodule Copi.Cornucopia.VoteTest do + use Copi.DataCase + + alias Copi.Cornucopia.Vote + + describe "votes" do + @valid_attrs %{player_id: Ecto.ULID.generate(), dealt_card_id: 1} + @invalid_attrs %{player_id: nil, dealt_card_id: nil} + + test "changeset with valid attributes" do + changeset = Vote.changeset(%Vote{}, @valid_attrs) + assert changeset.valid? + end + + test "changeset with invalid attributes" do + changeset = Vote.changeset(%Vote{}, @invalid_attrs) + refute changeset.valid? + assert "can't be blank" in errors_on(changeset).player_id + assert "can't be blank" in errors_on(changeset).dealt_card_id + end + end +end