1 2 describe "<%= schema.plural %>" do 3 alias <%= inspect schema.module %> 4 5 @valid_attrs <%= inspect schema.params.create %> 6 @update_attrs <%= inspect schema.params.update %> 7 @invalid_attrs <%= inspect for {key, _} <- schema.params.create, into: %{}, do: {key, nil} %> 8 9 def <%= schema.singular %>_fixture(attrs \\ %{}) do 10 {:ok, <%= schema.singular %>} = 11 attrs 12 |> Enum.into(@valid_attrs) 13 |> <%= inspect context.alias %>.create_<%= schema.singular %>() 14 15 <%= schema.singular %> 16 end 17 18 test "list_<%= schema.plural %>/0 returns all <%= schema.plural %>" do 19 <%= schema.singular %> = <%= schema.singular %>_fixture() 20 assert <%= inspect context.alias %>.list_<%= schema.plural %>() == [<%= schema.singular %>] 21 end 22 23 test "get_<%= schema.singular %>!/1 returns the <%= schema.singular %> with given id" do 24 <%= schema.singular %> = <%= schema.singular %>_fixture() 25 assert <%= inspect context.alias %>.get_<%= schema.singular %>!(<%= schema.singular %>.id) == <%= schema.singular %> 26 end 27 28 test "create_<%= schema.singular %>/1 with valid data creates a <%= schema.singular %>" do 29 assert {:ok, %<%= inspect schema.alias %>{} = <%= schema.singular %>} = <%= inspect context.alias %>.create_<%= schema.singular %>(@valid_attrs)<%= for {field, value} <- schema.params.create do %> 30 assert <%= schema.singular %>.<%= field %> == <%= Mix.Phoenix.Schema.value(schema, field, value) %><% end %> 31 end 32 33 test "create_<%= schema.singular %>/1 with invalid data returns error changeset" do 34 assert {:error, %Ecto.Changeset{}} = <%= inspect context.alias %>.create_<%= schema.singular %>(@invalid_attrs) 35 end 36 37 test "update_<%= schema.singular %>/2 with valid data updates the <%= schema.singular %>" do 38 <%= schema.singular %> = <%= schema.singular %>_fixture() 39 assert {:ok, <%= schema.singular %>} = <%= inspect context.alias %>.update_<%= schema.singular %>(<%= schema.singular %>, @update_attrs) 40 assert %<%= inspect schema.alias %>{} = <%= schema.singular %><%= for {field, value} <- schema.params.update do %> 41 assert <%= schema.singular %>.<%= field %> == <%= Mix.Phoenix.Schema.value(schema, field, value) %><% end %> 42 end 43 44 test "update_<%= schema.singular %>/2 with invalid data returns error changeset" do 45 <%= schema.singular %> = <%= schema.singular %>_fixture() 46 assert {:error, %Ecto.Changeset{}} = <%= inspect context.alias %>.update_<%= schema.singular %>(<%= schema.singular %>, @invalid_attrs) 47 assert <%= schema.singular %> == <%= inspect context.alias %>.get_<%= schema.singular %>!(<%= schema.singular %>.id) 48 end 49 50 test "delete_<%= schema.singular %>/1 deletes the <%= schema.singular %>" do 51 <%= schema.singular %> = <%= schema.singular %>_fixture() 52 assert {:ok, %<%= inspect schema.alias %>{}} = <%= inspect context.alias %>.delete_<%= schema.singular %>(<%= schema.singular %>) 53 assert_raise Ecto.NoResultsError, fn -> <%= inspect context.alias %>.get_<%= schema.singular %>!(<%= schema.singular %>.id) end 54 end 55 56 test "change_<%= schema.singular %>/1 returns a <%= schema.singular %> changeset" do 57 <%= schema.singular %> = <%= schema.singular %>_fixture() 58 assert %Ecto.Changeset{} = <%= inspect context.alias %>.change_<%= schema.singular %>(<%= schema.singular %>) 59 end 60 end 61