summaryrefslogtreecommitdiff
path: root/test/silmataivas/users_test.exs
diff options
context:
space:
mode:
Diffstat (limited to 'test/silmataivas/users_test.exs')
-rw-r--r--test/silmataivas/users_test.exs62
1 files changed, 62 insertions, 0 deletions
diff --git a/test/silmataivas/users_test.exs b/test/silmataivas/users_test.exs
new file mode 100644
index 0000000..5044876
--- /dev/null
+++ b/test/silmataivas/users_test.exs
@@ -0,0 +1,62 @@
+defmodule Silmataivas.UsersTest do
+ use Silmataivas.DataCase
+
+ alias Silmataivas.Users
+
+ describe "users" do
+ alias Silmataivas.Users.User
+
+ import Silmataivas.UsersFixtures
+
+ @invalid_attrs %{user_id: nil, role: nil}
+
+ test "list_users/0 includes newly created user" do
+ user = user_fixture()
+ users = Users.list_users()
+ assert Enum.any?(users, fn u -> u.id == user.id end)
+ end
+
+ test "get_user!/1 returns the user with given id" do
+ user = user_fixture()
+ assert Users.get_user!(user.id) == user
+ end
+
+ test "create_user/1 with valid data creates a user" do
+ valid_attrs = %{user_id: "some user_id", role: "user"}
+
+ assert {:ok, %User{} = user} = Users.create_user(valid_attrs)
+ assert user.user_id == "some user_id"
+ assert user.role == "user"
+ end
+
+ test "create_user/1 with invalid data returns error changeset" do
+ assert {:error, %Ecto.Changeset{}} = Users.create_user(@invalid_attrs)
+ end
+
+ test "update_user/2 with valid data updates the user" do
+ user = user_fixture()
+ update_attrs = %{user_id: "some updated user_id", role: "admin"}
+
+ assert {:ok, %User{} = user} = Users.update_user(user, update_attrs)
+ assert user.user_id == "some updated user_id"
+ assert user.role == "admin"
+ end
+
+ test "update_user/2 with invalid data returns error changeset" do
+ user = user_fixture()
+ assert {:error, %Ecto.Changeset{}} = Users.update_user(user, @invalid_attrs)
+ assert user == Users.get_user!(user.id)
+ end
+
+ test "delete_user/1 deletes the user" do
+ user = user_fixture()
+ assert {:ok, %User{}} = Users.delete_user(user)
+ assert_raise Ecto.NoResultsError, fn -> Users.get_user!(user.id) end
+ end
+
+ test "change_user/1 returns a user changeset" do
+ user = user_fixture()
+ assert %Ecto.Changeset{} = Users.change_user(user)
+ end
+ end
+end