use more verified routes
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		| @@ -25,7 +25,7 @@ defmodule MemexWeb.UserConfirmationController do | |||||||
|         "if your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." |         "if your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." | ||||||
|       ) |       ) | ||||||
|     ) |     ) | ||||||
|     |> redirect(to: "/") |     |> redirect(to: ~p"/") | ||||||
|   end |   end | ||||||
|  |  | ||||||
|   # Do not log in the user after confirmation to avoid a |   # Do not log in the user after confirmation to avoid a | ||||||
| @@ -35,7 +35,7 @@ defmodule MemexWeb.UserConfirmationController do | |||||||
|       {:ok, %{email: email}} -> |       {:ok, %{email: email}} -> | ||||||
|         conn |         conn | ||||||
|         |> put_flash(:info, dgettext("prompts", "%{email} confirmed successfully.", email: email)) |         |> put_flash(:info, dgettext("prompts", "%{email} confirmed successfully.", email: email)) | ||||||
|         |> redirect(to: "/") |         |> redirect(to: ~p"/") | ||||||
|  |  | ||||||
|       :error -> |       :error -> | ||||||
|         # If there is a current user and the account was already confirmed, |         # If there is a current user and the account was already confirmed, | ||||||
| @@ -44,7 +44,7 @@ defmodule MemexWeb.UserConfirmationController do | |||||||
|         # a warning message. |         # a warning message. | ||||||
|         case conn.assigns do |         case conn.assigns do | ||||||
|           %{current_user: %{confirmed_at: confirmed_at}} when not is_nil(confirmed_at) -> |           %{current_user: %{confirmed_at: confirmed_at}} when not is_nil(confirmed_at) -> | ||||||
|             redirect(conn, to: "/") |             redirect(conn, to: ~p"/") | ||||||
|  |  | ||||||
|           %{} -> |           %{} -> | ||||||
|             conn |             conn | ||||||
| @@ -52,7 +52,7 @@ defmodule MemexWeb.UserConfirmationController do | |||||||
|               :error, |               :error, | ||||||
|               dgettext("errors", "user confirmation link is invalid or it has expired.") |               dgettext("errors", "user confirmation link is invalid or it has expired.") | ||||||
|             ) |             ) | ||||||
|             |> redirect(to: "/") |             |> redirect(to: ~p"/") | ||||||
|         end |         end | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|   | |||||||
| @@ -26,7 +26,7 @@ defmodule MemexWeb.UserResetPasswordController do | |||||||
|         "if your email is in our system, you will receive instructions to reset your password shortly." |         "if your email is in our system, you will receive instructions to reset your password shortly." | ||||||
|       ) |       ) | ||||||
|     ) |     ) | ||||||
|     |> redirect(to: "/") |     |> redirect(to: ~p"/") | ||||||
|   end |   end | ||||||
|  |  | ||||||
|   def edit(conn, _params) do |   def edit(conn, _params) do | ||||||
| @@ -61,7 +61,7 @@ defmodule MemexWeb.UserResetPasswordController do | |||||||
|         :error, |         :error, | ||||||
|         dgettext("errors", "reset password link is invalid or it has expired.") |         dgettext("errors", "reset password link is invalid or it has expired.") | ||||||
|       ) |       ) | ||||||
|       |> redirect(to: "/") |       |> redirect(to: ~p"/") | ||||||
|       |> halt() |       |> halt() | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|   | |||||||
| @@ -24,7 +24,7 @@ defmodule MemexWeb.UserAuthTest do | |||||||
|       conn = UserAuth.log_in_user(conn, current_user) |       conn = UserAuth.log_in_user(conn, current_user) | ||||||
|       assert token = get_session(conn, :user_token) |       assert token = get_session(conn, :user_token) | ||||||
|       assert get_session(conn, :live_socket_id) == "users_sessions:#{Base.url_encode64(token)}" |       assert get_session(conn, :live_socket_id) == "users_sessions:#{Base.url_encode64(token)}" | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       assert Accounts.get_user_by_session_token(token) |       assert Accounts.get_user_by_session_token(token) | ||||||
|     end |     end | ||||||
|  |  | ||||||
| @@ -64,7 +64,7 @@ defmodule MemexWeb.UserAuthTest do | |||||||
|       refute get_session(conn, :user_token) |       refute get_session(conn, :user_token) | ||||||
|       refute conn.cookies[@remember_me_cookie] |       refute conn.cookies[@remember_me_cookie] | ||||||
|       assert %{max_age: 0} = conn.resp_cookies[@remember_me_cookie] |       assert %{max_age: 0} = conn.resp_cookies[@remember_me_cookie] | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       refute Accounts.get_user_by_session_token(user_token) |       refute Accounts.get_user_by_session_token(user_token) | ||||||
|     end |     end | ||||||
|  |  | ||||||
| @@ -86,7 +86,7 @@ defmodule MemexWeb.UserAuthTest do | |||||||
|       conn = conn |> fetch_cookies() |> UserAuth.log_out_user() |       conn = conn |> fetch_cookies() |> UserAuth.log_out_user() | ||||||
|       refute get_session(conn, :user_token) |       refute get_session(conn, :user_token) | ||||||
|       assert %{max_age: 0} = conn.resp_cookies[@remember_me_cookie] |       assert %{max_age: 0} = conn.resp_cookies[@remember_me_cookie] | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|  |  | ||||||
| @@ -129,7 +129,7 @@ defmodule MemexWeb.UserAuthTest do | |||||||
|         |> UserAuth.redirect_if_user_is_authenticated([]) |         |> UserAuth.redirect_if_user_is_authenticated([]) | ||||||
|  |  | ||||||
|       assert conn.halted |       assert conn.halted | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|     end |     end | ||||||
|  |  | ||||||
|     test "does not redirect if user is not authenticated", %{conn: conn} do |     test "does not redirect if user is not authenticated", %{conn: conn} do | ||||||
|   | |||||||
| @@ -28,7 +28,7 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|           user: %{email: user.email} |           user: %{email: user.email} | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ |       conn.assigns.flash["info"] =~ | ||||||
|         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." |         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." | ||||||
| @@ -44,7 +44,7 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|           user: %{email: user.email} |           user: %{email: user.email} | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ |       conn.assigns.flash["info"] =~ | ||||||
|         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." |         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." | ||||||
| @@ -56,7 +56,7 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|           user: %{email: "unknown@example.com"} |           user: %{email: "unknown@example.com"} | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ |       conn.assigns.flash["info"] =~ | ||||||
|         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." |         "If your email is in our system and it has not been confirmed yet, you will receive an email with instructions shortly." | ||||||
| @@ -73,7 +73,7 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|         end) |         end) | ||||||
|  |  | ||||||
|       conn = get(conn, ~p"/users/confirm/#{token}") |       conn = get(conn, ~p"/users/confirm/#{token}") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ "#{user.email} confirmed successfully" |       conn.assigns.flash["info"] =~ "#{user.email} confirmed successfully" | ||||||
|  |  | ||||||
| @@ -83,7 +83,7 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|  |  | ||||||
|       # When not logged in |       # When not logged in | ||||||
|       conn = get(conn, ~p"/users/confirm/#{token}") |       conn = get(conn, ~p"/users/confirm/#{token}") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       conn.assigns.flash["error"] =~ "User confirmation link is invalid or it has expired" |       conn.assigns.flash["error"] =~ "User confirmation link is invalid or it has expired" | ||||||
|  |  | ||||||
|       # When logged in |       # When logged in | ||||||
| @@ -92,13 +92,13 @@ defmodule MemexWeb.UserConfirmationControllerTest do | |||||||
|         |> log_in_user(user) |         |> log_in_user(user) | ||||||
|         |> get(~p"/users/confirm/#{token}") |         |> get(~p"/users/confirm/#{token}") | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       refute conn.assigns.flash["error"] |       refute conn.assigns.flash["error"] | ||||||
|     end |     end | ||||||
|  |  | ||||||
|     test "does not confirm email with invalid token", %{conn: conn, user: user} do |     test "does not confirm email with invalid token", %{conn: conn, user: user} do | ||||||
|       conn = get(conn, ~p"/users/confirm/#{"oops"}") |       conn = get(conn, ~p"/users/confirm/#{"oops"}") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       conn.assigns.flash["error"] =~ "User confirmation link is invalid or it has expired" |       conn.assigns.flash["error"] =~ "User confirmation link is invalid or it has expired" | ||||||
|  |  | ||||||
|       refute Accounts.get_user!(user.id).confirmed_at |       refute Accounts.get_user!(user.id).confirmed_at | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ defmodule MemexWeb.UserRegistrationControllerTest do | |||||||
|  |  | ||||||
|     test "redirects if already logged in", %{conn: conn} do |     test "redirects if already logged in", %{conn: conn} do | ||||||
|       conn = conn |> log_in_user(user_fixture()) |> get(~p"/users/register") |       conn = conn |> log_in_user(user_fixture()) |> get(~p"/users/register") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|  |  | ||||||
| @@ -35,7 +35,7 @@ defmodule MemexWeb.UserRegistrationControllerTest do | |||||||
|                "info" => "please check your email to verify your account" |                "info" => "please check your email to verify your account" | ||||||
|              } |              } | ||||||
|  |  | ||||||
|       assert redirected_to(conn) =~ "/" |       assert redirected_to(conn) =~ ~p"/" | ||||||
|     end |     end | ||||||
|  |  | ||||||
|     test "render errors for invalid data", %{conn: conn} do |     test "render errors for invalid data", %{conn: conn} do | ||||||
|   | |||||||
| @@ -28,7 +28,7 @@ defmodule MemexWeb.UserResetPasswordControllerTest do | |||||||
|           user: %{email: user.email} |           user: %{email: user.email} | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ |       conn.assigns.flash["info"] =~ | ||||||
|         "If your email is in our system, you will receive instructions to reset your password shortly." |         "If your email is in our system, you will receive instructions to reset your password shortly." | ||||||
| @@ -42,7 +42,7 @@ defmodule MemexWeb.UserResetPasswordControllerTest do | |||||||
|           user: %{email: "unknown@example.com"} |           user: %{email: "unknown@example.com"} | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|  |  | ||||||
|       conn.assigns.flash["info"] =~ |       conn.assigns.flash["info"] =~ | ||||||
|         "If your email is in our system, you will receive instructions to reset your password shortly." |         "If your email is in our system, you will receive instructions to reset your password shortly." | ||||||
| @@ -68,7 +68,7 @@ defmodule MemexWeb.UserResetPasswordControllerTest do | |||||||
|  |  | ||||||
|     test "does not render reset password with invalid token", %{conn: conn} do |     test "does not render reset password with invalid token", %{conn: conn} do | ||||||
|       conn = get(conn, ~p"/users/reset_password/#{"oops"}") |       conn = get(conn, ~p"/users/reset_password/#{"oops"}") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       conn.assigns.flash["error"] =~ "Reset password link is invalid or it has expired" |       conn.assigns.flash["error"] =~ "Reset password link is invalid or it has expired" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
| @@ -115,7 +115,7 @@ defmodule MemexWeb.UserResetPasswordControllerTest do | |||||||
|  |  | ||||||
|     test "does not reset password with invalid token", %{conn: conn} do |     test "does not reset password with invalid token", %{conn: conn} do | ||||||
|       conn = put(conn, ~p"/users/reset_password/#{"oops"}") |       conn = put(conn, ~p"/users/reset_password/#{"oops"}") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       conn.assigns.flash["error"] =~ "Reset password link is invalid or it has expired" |       conn.assigns.flash["error"] =~ "Reset password link is invalid or it has expired" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|   | |||||||
| @@ -20,7 +20,7 @@ defmodule MemexWeb.UserSessionControllerTest do | |||||||
|  |  | ||||||
|     test "redirects if already logged in", %{conn: conn, current_user: current_user} do |     test "redirects if already logged in", %{conn: conn, current_user: current_user} do | ||||||
|       conn = conn |> log_in_user(current_user) |> get(~p"/users/log_in") |       conn = conn |> log_in_user(current_user) |> get(~p"/users/log_in") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|  |  | ||||||
| @@ -32,10 +32,10 @@ defmodule MemexWeb.UserSessionControllerTest do | |||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert get_session(conn, :user_token) |       assert get_session(conn, :user_token) | ||||||
|       assert redirected_to(conn) =~ "/" |       assert redirected_to(conn) =~ ~p"/" | ||||||
|  |  | ||||||
|       # Now do a logged in request and assert on the menu |       # Now do a logged in request and assert on the menu | ||||||
|       conn = get(conn, "/") |       conn = get(conn, ~p"/") | ||||||
|       response = html_response(conn, 200) |       response = html_response(conn, 200) | ||||||
|       assert response =~ current_user.email |       assert response =~ current_user.email | ||||||
|       assert response =~ "are you sure you want to log out?" |       assert response =~ "are you sure you want to log out?" | ||||||
| @@ -52,7 +52,7 @@ defmodule MemexWeb.UserSessionControllerTest do | |||||||
|         }) |         }) | ||||||
|  |  | ||||||
|       assert conn.resp_cookies["_memex_web_user_remember_me"] |       assert conn.resp_cookies["_memex_web_user_remember_me"] | ||||||
|       assert redirected_to(conn) =~ "/" |       assert redirected_to(conn) =~ ~p"/" | ||||||
|     end |     end | ||||||
|  |  | ||||||
|     test "logs the user in with return to", %{conn: conn, current_user: current_user} do |     test "logs the user in with return to", %{conn: conn, current_user: current_user} do | ||||||
| @@ -78,21 +78,21 @@ defmodule MemexWeb.UserSessionControllerTest do | |||||||
|  |  | ||||||
|       response = html_response(conn, 200) |       response = html_response(conn, 200) | ||||||
|       assert response =~ "log in" |       assert response =~ "log in" | ||||||
|       assert response =~ "Invalid email or password" |       assert response =~ "invalid email or password" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|  |  | ||||||
|   describe "DELETE /users/log_out" do |   describe "DELETE /users/log_out" do | ||||||
|     test "logs the user out", %{conn: conn, current_user: current_user} do |     test "logs the user out", %{conn: conn, current_user: current_user} do | ||||||
|       conn = conn |> log_in_user(current_user) |> delete(~p"/users/log_out") |       conn = conn |> log_in_user(current_user) |> delete(~p"/users/log_out") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       refute get_session(conn, :user_token) |       refute get_session(conn, :user_token) | ||||||
|       conn.assigns.flash["info"] =~ "logged out successfully" |       conn.assigns.flash["info"] =~ "logged out successfully" | ||||||
|     end |     end | ||||||
|  |  | ||||||
|     test "succeeds even if the user is not logged in", %{conn: conn} do |     test "succeeds even if the user is not logged in", %{conn: conn} do | ||||||
|       conn = delete(conn, ~p"/users/log_out") |       conn = delete(conn, ~p"/users/log_out") | ||||||
|       assert redirected_to(conn) == "/" |       assert redirected_to(conn) == ~p"/" | ||||||
|       refute get_session(conn, :user_token) |       refute get_session(conn, :user_token) | ||||||
|       conn.assigns.flash["info"] =~ "logged out successfully" |       conn.assigns.flash["info"] =~ "logged out successfully" | ||||||
|     end |     end | ||||||
|   | |||||||
| @@ -8,4 +8,10 @@ defmodule MemexWeb.HomeLiveTest do | |||||||
|     assert disconnected_html =~ "memEx" |     assert disconnected_html =~ "memEx" | ||||||
|     assert render(page_live) =~ "memEx" |     assert render(page_live) =~ "memEx" | ||||||
|   end |   end | ||||||
|  |  | ||||||
|  |   test "displays version number", %{conn: conn} do | ||||||
|  |     {:ok, home_live, disconnected_html} = live(conn, ~p"/") | ||||||
|  |     assert disconnected_html =~ Mix.Project.config()[:version] | ||||||
|  |     assert render(home_live) =~ Mix.Project.config()[:version] | ||||||
|  |   end | ||||||
| end | end | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user