diff --git a/app/views/admin/users/show.html.erb b/app/views/admin/users/show.html.erb index 062413d4d..d20e7f16e 100644 --- a/app/views/admin/users/show.html.erb +++ b/app/views/admin/users/show.html.erb @@ -1,10 +1,16 @@

- <%= @user.name %><%= link_to "@#{@user.username}", @user.path, class: "ml-2", target: "_blank", rel: "noopener" %> + <% if @user.registered? %> + <%= @user.name %><%= link_to "@#{@user.username}", @user.path, class: "ml-2", target: "_blank", rel: "noopener" %> + <% else %> + @<%= @user.username %> has not accepted their invitation yet. + <% end %>

- Manage User -

Member since <%= @user.created_at.strftime("%b %e '%y") %>

+ <% if @user.registered? %> + Manage User +

Member since <%= @user.created_at.strftime("%b %e '%y") %>

+ <% end %>
@@ -35,8 +41,10 @@
-<%= render "activity" %> -<%= render "credits" %> -<%= render "notes" %> -<%= render "user_organizations" %> -<%= render "email_tools" %> +<% if @user.registered? %> + <%= render "activity" %> + <%= render "credits" %> + <%= render "notes" %> + <%= render "user_organizations" %> + <%= render "email_tools" %> +<% end %> diff --git a/spec/requests/admin/invitations_spec.rb b/spec/requests/admin/invitations_spec.rb index 88e757465..9c2c01c44 100644 --- a/spec/requests/admin/invitations_spec.rb +++ b/spec/requests/admin/invitations_spec.rb @@ -8,7 +8,7 @@ RSpec.describe "/admin/invitations", type: :request do sign_in(admin) end - describe "GETS /admin/invitations" do + describe "GET /admin/invitations" do it "renders to appropriate page" do user.update_column(:registered, false) get "/admin/invitations" @@ -16,7 +16,7 @@ RSpec.describe "/admin/invitations", type: :request do end end - describe "GETS /admin/invitations/new" do + describe "GET /admin/invitations/new" do it "renders to appropriate page" do get "/admin/invitations/new" expect(response.body).to include("Email:") diff --git a/spec/requests/admin/users_spec.rb b/spec/requests/admin/users_spec.rb index 0d79fc746..77a3ade19 100644 --- a/spec/requests/admin/users_spec.rb +++ b/spec/requests/admin/users_spec.rb @@ -23,6 +23,27 @@ RSpec.describe "admin/users", type: :request do get "/admin/users/#{user.id}" expect(response.body).to include(user.username) end + + context "when a user is unregistered" do + it "renders a message stating that the user isn't registered" do + user.update_columns(registered: false) + get "/admin/users/#{user.id}" + expect(response.body).to include("@#{user.username} has not accepted their invitation yet.") + end + + it "only displays limited information about the user" do + user.update_columns(registered: false) + get "/admin/users/#{user.id}" + expect(response.body).not_to include("Current Roles") + end + end + + context "when a user is registered" do + it "renders the Admin User profile as expected" do + get "/admin/users/#{user.id}" + expect(response.body).to include("Current Roles") + end + end end describe "GET /admin/users/:id/edit" do