\ No newline at end of file
diff --git a/app/views/user_name_change_requests/new.html.erb b/app/views/user_name_change_requests/new.html.erb
index c112e827e..87f7a577d 100644
--- a/app/views/user_name_change_requests/new.html.erb
+++ b/app/views/user_name_change_requests/new.html.erb
@@ -16,6 +16,6 @@
- <%= submit_tag %>
+ <%= submit_tag "Submit" %>
<% end %>
\ No newline at end of file
diff --git a/app/views/user_name_change_requests/show.html.erb b/app/views/user_name_change_requests/show.html.erb
index 9f1d9cd78..eea761650 100644
--- a/app/views/user_name_change_requests/show.html.erb
+++ b/app/views/user_name_change_requests/show.html.erb
@@ -33,7 +33,11 @@
- <% if CurrentUser.user.is_admin? %>
+ <% if @change_request.rejected? %>
+
+
Request was rejected
+
+ <% elsif CurrentUser.user.is_admin? %>
Options
<%= form_tag(approve_user_name_change_request_path(@change_request)) do %>
@@ -52,5 +56,11 @@
<% end %>
<% end %>
+
+
+ <%= form_tag(user_name_change_request_path(@change_request), :method => :delete) do %>
+ <%= submit_tag "Delete" %>
+ <% end %>
+
diff --git a/app/views/users/_statistics.html.erb b/app/views/users/_statistics.html.erb
index d7367c435..3c94edafc 100644
--- a/app/views/users/_statistics.html.erb
+++ b/app/views/users/_statistics.html.erb
@@ -97,6 +97,13 @@
+ <% if CurrentUser.user.is_janitor? && presenter.previous_names.present? %>
+
+
Previous Names
+
<%= presenter.previous_names %>
+
+ <% end %>
+
<% if CurrentUser.user.id == user.id %>
diff --git a/test/functional/user_name_change_requests_controller_test.rb b/test/functional/user_name_change_requests_controller_test.rb
new file mode 100644
index 000000000..be0547979
--- /dev/null
+++ b/test/functional/user_name_change_requests_controller_test.rb
@@ -0,0 +1,62 @@
+require 'test_helper'
+
+class UserNameChangeRequestsControllerTest < ActionController::TestCase
+ context "The user name change requests controller" do
+ setup do
+ @user = FactoryGirl.create(:privileged_user)
+ @admin = FactoryGirl.create(:admin_user)
+ CurrentUser.user = @user
+ CurrentUser.ip_addr = "127.0.0.1"
+ @change_request = UserNameChangeRequest.create!(
+ :user_id => @user.id,
+ :original_name => @user.name,
+ :desired_name => "abc",
+ :change_reason => "hello"
+ )
+ end
+
+ context "new action" do
+ should "render" do
+ get :new, {}, {:user_id => @user.id}
+ assert_response :success
+ end
+ end
+
+ context "show action" do
+ should "render" do
+ get :show, {:id => @change_request.id}, {:user_id => @user.id}
+ assert_response :success
+ end
+ end
+
+ context "for actions restricted to admins" do
+ context "index action" do
+ should "render" do
+ get :index, {}, {:user_id => @admin.id}
+ assert_response :success
+ end
+ end
+
+ context "approve action" do
+ should "succeed" do
+ post :approve, {:id => @change_request.id}, {:user_id => @admin.id}
+ assert_redirected_to(user_name_change_request_path(@change_request))
+ end
+ end
+
+ context "reject action" do
+ should "succeed" do
+ post :reject, {:id => @change_request.id}, {:user_id => @admin.id}
+ assert_redirected_to(user_name_change_request_path(@change_request))
+ end
+ end
+
+ context "destroy action" do
+ should "destroy" do
+ post :destroy, {:id => @change_request.id}, {:user_id => @admin.id}
+ assert_redirected_to(user_name_change_requests_path)
+ end
+ end
+ end
+ end
+end
diff --git a/test/unit/user_name_change_request_test.rb b/test/unit/user_name_change_request_test.rb
index cbc62206f..93a8079c6 100644
--- a/test/unit/user_name_change_request_test.rb
+++ b/test/unit/user_name_change_request_test.rb
@@ -20,7 +20,7 @@ class UserNameChangeRequestTest < ActiveSupport::TestCase
end
should "create a dmail" do
- assert_difference("Dmail.count", 2) do
+ assert_difference("Dmail.count", 4) do
@change_request.approve!
end
end
@@ -35,6 +35,18 @@ class UserNameChangeRequestTest < ActiveSupport::TestCase
@change_request.approve!
assert_equal("abc", Cache.get("uin:#{@requester.id}"))
end
+
+ should "create feedback" do
+ assert_difference("UserFeedback.count", 1) do
+ @change_request.approve!
+ end
+ end
+
+ should "create mod action" do
+ assert_difference("ModAction.count", 1) do
+ @change_request.approve!
+ end
+ end
end
context "rejecting a request" do