1
0
mirror of https://github.com/mgerb/classic-wow-forums synced 2026-01-09 00:42:47 +00:00
Files
classic-wow-forums/test/myapp/data/user_test.exs

56 lines
1.3 KiB
Elixir

defmodule MyApp.Data.UserTest do
use MyAppWeb.ConnCase, async: true
import MyApp.Data.User
import MyApp.Data.TestHelpers
test "user is inserted into database" do
{:ok, user} = new_user()
assert user.access_token == "test_token"
assert user.battle_net_id == 1
assert user.battletag == "mgerb42"
assert user.id == user.id
assert user.permissions == "user"
assert user.token =~ ~r/(?).(?).(?)/
end
test "user's battletag is updated" do
{:ok, user} = new_user()
# update user battletag
user = user
|> atom_key_to_string()
|> Map.put("battletag", "mgerb")
{:ok, user} = upsert_user(user)
assert user == %{
access_token: "test_token",
battle_net_id: 1,
battletag: "mgerb",
id: user.id,
permissions: "user",
expires_in: nil,
}
# call upsert again with same battletag
{:ok, user} = user
|> atom_key_to_string()
|> upsert_user()
assert user == %{
access_token: "test_token",
battle_net_id: 1,
battletag: "mgerb",
id: user.id,
permissions: "user",
expires_in: nil,
character_avatar: nil,
character_class: nil,
character_guild: nil,
character_name: nil,
character_realm: nil,
}
end
end