This commit is contained in:
@@ -64,6 +64,45 @@ defmodule LinkShortenerWeb.Api.V1.AccountsControllerTest do
|
||||
end
|
||||
end
|
||||
|
||||
describe "user signs out" do
|
||||
setup [:create_user]
|
||||
|
||||
setup %{conn: conn} do
|
||||
%{token: token} = create_user_token()
|
||||
|
||||
conn = conn
|
||||
|> put_req_header("accept", "application/json")
|
||||
|> put_req_header("authorization", "Bearer #{token}")
|
||||
|
||||
{:ok, conn: conn, token: token}
|
||||
end
|
||||
|
||||
test "renders the message and the token if successfully sign out", %{conn: conn, token: token} do
|
||||
conn = post(conn, ~p"/api/v1/users/sign_out", %{})
|
||||
|
||||
assert %{
|
||||
"message" => "Successfully sign out",
|
||||
"token" => token,
|
||||
} = json_response(conn, 200)
|
||||
end
|
||||
|
||||
test "renders errors if the token is invalid after revoke", %{conn: conn, token: token} do
|
||||
# revoking
|
||||
conn = post(conn, ~p"/api/v1/users/sign_out", %{})
|
||||
# second revoking
|
||||
conn = post(conn, ~p"/api/v1/users/sign_out", %{})
|
||||
|
||||
assert %{
|
||||
"error" => "invalid_token"
|
||||
} = json_response(conn, 401)
|
||||
end
|
||||
end
|
||||
|
||||
defp create_user_token() do
|
||||
token = user_token_fixture()
|
||||
%{token: token}
|
||||
end
|
||||
|
||||
defp create_user(_) do
|
||||
user = user_fixture(@create_attrs)
|
||||
%{user: user}
|
||||
|
||||
@@ -2,6 +2,7 @@ defmodule LinkShortenerWeb.Api.V1.LinkControllerTest do
|
||||
use LinkShortenerWeb.ConnCase
|
||||
|
||||
import LinkShortener.LinksFixtures
|
||||
import LinkShortener.AccountsFixtures
|
||||
|
||||
alias LinkShortener.Links.Link
|
||||
alias LinkShortener.Links
|
||||
@@ -25,7 +26,13 @@ defmodule LinkShortenerWeb.Api.V1.LinkControllerTest do
|
||||
}
|
||||
|
||||
setup %{conn: conn} do
|
||||
{:ok, conn: put_req_header(conn, "accept", "application/json")}
|
||||
%{token: token} = create_user_token()
|
||||
|
||||
conn = conn
|
||||
|> put_req_header("accept", "application/json")
|
||||
|> put_req_header("authorization", "Bearer #{token}")
|
||||
|
||||
{:ok, conn: conn}
|
||||
end
|
||||
|
||||
describe "index" do
|
||||
@@ -92,6 +99,11 @@ defmodule LinkShortenerWeb.Api.V1.LinkControllerTest do
|
||||
end
|
||||
end
|
||||
|
||||
defp create_user_token() do
|
||||
token = user_token_fixture()
|
||||
%{token: token}
|
||||
end
|
||||
|
||||
defp create_link(_) do
|
||||
link = link_fixture()
|
||||
%{link: link}
|
||||
|
||||
Reference in New Issue
Block a user