]> git.openstreetmap.org Git - rails.git/commitdiff
Simplify link_to user calls on block pages
authorAnton Khorev <tony29@yandex.ru>
Wed, 20 Mar 2024 01:27:58 +0000 (04:27 +0300)
committerAnton Khorev <tony29@yandex.ru>
Wed, 20 Mar 2024 01:27:58 +0000 (04:27 +0300)
app/views/user_blocks/_block.html.erb
app/views/user_blocks/blocks_by.html.erb
app/views/user_blocks/blocks_on.html.erb
app/views/user_blocks/edit.html.erb
app/views/user_blocks/new.html.erb
app/views/user_blocks/revoke.html.erb
app/views/user_blocks/revoke_all.html.erb
app/views/user_blocks/show.html.erb
test/controllers/user_blocks_controller_test.rb

index f39efb571ecc477b044fe5e7f829f99ca793b2e7..50fe74e4cdf4616776bdea979c5008097cd15842 100644 (file)
@@ -1,9 +1,9 @@
 <tr>
   <% if show_user_name %>
-  <td><%= link_to block.user.display_name, user_path(block.user) %></td>
+  <td><%= link_to block.user.display_name, block.user %></td>
   <% end %>
   <% if show_creator_name %>
-  <td><%= link_to block.creator.display_name, user_path(block.creator) %></td>
+  <td><%= link_to block.creator.display_name, block.creator %></td>
   <% end %>
   <td><%= h truncate(block.reason) %></td>
   <td><%= h block_status(block) %></td>
@@ -11,7 +11,7 @@
     <% if block.revoker_id.nil? %>
       <%= t(".not_revoked") %>
     <% else %>
-      <%= link_to block.revoker.display_name, user_path(block.revoker) %>
+      <%= link_to block.revoker.display_name, block.revoker %>
     <% end %>
   </td>
   <td><%= link_to t(".show"), block %></td>
index d5283925bf9e61a1b788103875a78d07b2326936..87ff7f5b23a73a5c294aa587b907180783ea84a0 100644 (file)
@@ -1,6 +1,6 @@
 <% @title = t(".title", :name => @user.display_name) %>
 <% content_for :heading do %>
-  <h1><%= t(".heading_html", :name => link_to(@user.display_name, user_path(@user))) %></h1>
+  <h1><%= t(".heading_html", :name => link_to(@user.display_name, @user)) %></h1>
 <% end %>
 
 <% unless @user_blocks.empty? %>
index 7d1f83ce357e533edee42e529b6c27d8c172d0b6..ed03342dc73deed0014fc4516dd0df4baf28721f 100644 (file)
@@ -1,6 +1,6 @@
 <% @title = t(".title", :name => @user.display_name) %>
 <% content_for :heading do %>
-  <h1><%= t(".heading_html", :name => link_to(@user.display_name, user_path(@user))) %></h1>
+  <h1><%= t(".heading_html", :name => link_to(@user.display_name, @user)) %></h1>
 <% end %>
 
 <% unless @user_blocks.empty? %>
index db7c5e057f360d5c80ceab91cdbfee6e4fe86589..a5b165e9ad790e5c8b918b471a775ebf4091d0cf 100644 (file)
@@ -1,8 +1,6 @@
 <% @title = t ".title", :name => @user_block.user.display_name %>
 <% content_for :heading do %>
-  <h1><%= t(".heading_html",
-            :name => link_to(@user_block.user.display_name,
-                             user_path(@user_block.user))) %></h1>
+  <h1><%= t(".heading_html", :name => link_to(@user_block.user.display_name, @user_block.user)) %></h1>
   <nav class='secondary-actions'>
     <ul class='clearfix'>
       <li><%= link_to t(".show"), @user_block %></li>
index c390134ba3db8482127f0c0a34a085a147e39aeb..3de6aa539ec86d48964524437641f1ca86b5f07f 100644 (file)
@@ -1,8 +1,6 @@
 <% @title = t ".title", :name => @user.display_name %>
 <% content_for :heading do %>
-  <h1><%= t(".heading_html",
-            :name => link_to(@user.display_name,
-                             user_path(@user))) %></h1>
+  <h1><%= t(".heading_html", :name => link_to(@user.display_name, @user)) %></h1>
 <% end %>
 <%= bootstrap_form_for(@user_block) do |f| %>
   <%= hidden_field_tag "display_name", @user.display_name, :autocomplete => "off" %>
index eb1cc4cbebb4e9414043f828b753f03577ba25f8..6bf87c4c3cce00a12c11df92e4650e4416431a11 100644 (file)
@@ -4,10 +4,8 @@
 
 <% content_for :heading do %>
   <h1><%= t(".heading_html",
-            :block_on => link_to(@user_block.user.display_name,
-                                 user_path(@user_block.user)),
-            :block_by => link_to(@user_block.creator.display_name,
-                                 user_path(@user_block.creator))) %></h1>
+            :block_on => link_to(@user_block.user.display_name, @user_block.user),
+            :block_by => link_to(@user_block.creator.display_name, @user_block.creator)) %></h1>
 <% end %>
 
 <% if @user_block.ends_at > Time.now %>
index 7fef69b57fabddf64f3bf19f92529a7f0bf93532..75a425d706ce96444c5eb220f858aefd11316cc8 100644 (file)
@@ -1,10 +1,7 @@
-<% @title = t ".title",
-              :block_on => @user.display_name %>
+<% @title = t ".title", :block_on => @user.display_name %>
 
 <% content_for :heading do %>
-  <h1><%= t ".heading_html",
-            :block_on => link_to(@user.display_name,
-                                 user_path(@user)) %></h1>
+  <h1><%= t ".heading_html", :block_on => link_to(@user.display_name, @user) %></h1>
 <% end %>
 
 <% unless @user.blocks.active.empty? %>
index 03bcd30364d414e0d28e74d5626646e56c542823..94ea53b6446f983b38eab921c0d2af37a7727d18 100644 (file)
@@ -4,10 +4,8 @@
 
 <% content_for :heading do %>
   <h1><%= t(".heading_html",
-            :block_on => link_to(@user_block.user.display_name,
-                                 user_path(@user_block.user)),
-            :block_by => link_to(@user_block.creator.display_name,
-                                 user_path(@user_block.creator))) %></h1>
+            :block_on => link_to(@user_block.user.display_name, @user_block.user),
+            :block_by => link_to(@user_block.creator.display_name, @user_block.creator)) %></h1>
   <nav class='secondary-actions'>
     <ul class='clearfix'>
       <% if @user_block.ends_at > Time.now.getutc %>
@@ -26,7 +24,7 @@
 <dl class="row">
   <% if @user_block.revoker %>
     <dt class="col-sm-3"><%= t ".revoker" %></dt>
-    <dd class="col-sm-9"><%= link_to @user_block.revoker.display_name, user_path(@user_block.revoker) %></dd>
+    <dd class="col-sm-9"><%= link_to @user_block.revoker.display_name, @user_block.revoker %></dd>
   <% end %>
 
   <dt class="col-sm-3"><%= t ".created" %></dt>
index fc3cbda92503b61b295009cb51368a4b0b86a4a1..8891e5b36dcb3eae5055d3ccd1bf60b160cc8d6d 100644 (file)
@@ -67,14 +67,23 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
   ##
   # test the index action
   def test_index
+    revoked_block = create(:user_block, :revoked)
+
+    get user_blocks_path
+    assert_response :success
+    assert_select "table#block_list tbody tr", :count => 1 do
+      assert_select "a[href='#{user_path revoked_block.user}']", :text => revoked_block.user.display_name
+      assert_select "a[href='#{user_path revoked_block.creator}']", :text => revoked_block.creator.display_name
+      assert_select "a[href='#{user_path revoked_block.revoker}']", :text => revoked_block.revoker.display_name
+    end
+
     active_block = create(:user_block)
     expired_block = create(:user_block, :expired)
-    revoked_block = create(:user_block, :revoked)
 
     get user_blocks_path
     assert_response :success
-    assert_select "table#block_list", :count => 1 do
-      assert_select "tr", 4
+    assert_select "table#block_list tbody", :count => 1 do
+      assert_select "tr", 3
       assert_select "a[href='#{user_block_path(active_block)}']", 1
       assert_select "a[href='#{user_block_path(expired_block)}']", 1
       assert_select "a[href='#{user_block_path(revoked_block)}']", 1
@@ -115,14 +124,21 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Viewing an expired block should work
     get user_block_path(:id => expired_block)
     assert_response :success
+    assert_select "h1 a[href='#{user_path expired_block.user}']", :text => expired_block.user.display_name
+    assert_select "h1 a[href='#{user_path expired_block.creator}']", :text => expired_block.creator.display_name
 
     # Viewing a revoked block should work
     get user_block_path(:id => revoked_block)
     assert_response :success
+    assert_select "h1 a[href='#{user_path revoked_block.user}']", :text => revoked_block.user.display_name
+    assert_select "h1 a[href='#{user_path revoked_block.creator}']", :text => revoked_block.creator.display_name
+    assert_select "a[href='#{user_path revoked_block.revoker}']", :text => revoked_block.revoker.display_name
 
     # Viewing an active block should work, but shouldn't mark it as seen
     get user_block_path(:id => active_block)
     assert_response :success
+    assert_select "h1 a[href='#{user_path active_block.user}']", :text => active_block.user.display_name
+    assert_select "h1 a[href='#{user_path active_block.creator}']", :text => active_block.creator.display_name
     assert UserBlock.find(active_block.id).needs_view
 
     # Login as the blocked user
@@ -156,6 +172,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check that the block creation page loads for moderators
     get new_user_block_path(target_user)
     assert_response :success
+    assert_select "h1 a[href='#{user_path target_user}']", :text => target_user.display_name
     assert_select "form#new_user_block", :count => 1 do
       assert_select "textarea#user_block_reason", :count => 1
       assert_select "select#user_block_period", :count => 1
@@ -193,6 +210,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check that the block edit page loads for moderators
     get edit_user_block_path(:id => active_block)
     assert_response :success
+    assert_select "h1 a[href='#{user_path active_block.user}']", :text => active_block.user.display_name
     assert_select "form#edit_user_block_#{active_block.id}", :count => 1 do
       assert_select "textarea#user_block_reason", :count => 1
       assert_select "select#user_block_period", :count => 1
@@ -364,6 +382,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     get revoke_user_block_path(:id => active_block)
     assert_response :success
     assert_template "revoke"
+    assert_select "h1 a[href='#{user_path active_block.user}']", :text => active_block.user.display_name
     assert_select "form", :count => 1 do
       assert_select "input#confirm[type='checkbox']", :count => 1
       assert_select "input[type='submit'][value='Revoke!']", :count => 1
@@ -416,6 +435,7 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check that the revoke all blocks page loads for moderators
     get revoke_all_user_blocks_path(blocked_user)
     assert_response :success
+    assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
   end
 
   ##
@@ -490,8 +510,9 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check the list of blocks for a user that is currently blocked
     get user_blocks_on_path(blocked_user)
     assert_response :success
-    assert_select "table#block_list", :count => 1 do
-      assert_select "tr", 3
+    assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
+    assert_select "table#block_list tbody", :count => 1 do
+      assert_select "tr", 2
       assert_select "a[href='#{user_block_path(active_block)}']", 1
       assert_select "a[href='#{user_block_path(revoked_block)}']", 1
     end
@@ -499,8 +520,9 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check the list of blocks for a user that has previously been blocked
     get user_blocks_on_path(unblocked_user)
     assert_response :success
-    assert_select "table#block_list", :count => 1 do
-      assert_select "tr", 2
+    assert_select "h1 a[href='#{user_path unblocked_user}']", :text => unblocked_user.display_name
+    assert_select "table#block_list tbody", :count => 1 do
+      assert_select "tr", 1
       assert_select "a[href='#{user_block_path(expired_block)}']", 1
     end
   end
@@ -543,16 +565,18 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     # Check the list of blocks given by one moderator
     get user_blocks_by_path(moderator_user)
     assert_response :success
-    assert_select "table#block_list", :count => 1 do
-      assert_select "tr", 2
+    assert_select "h1 a[href='#{user_path moderator_user}']", :text => moderator_user.display_name
+    assert_select "table#block_list tbody", :count => 1 do
+      assert_select "tr", 1
       assert_select "a[href='#{user_block_path(active_block)}']", 1
     end
 
     # Check the list of blocks given by a different moderator
     get user_blocks_by_path(second_moderator_user)
     assert_response :success
-    assert_select "table#block_list", :count => 1 do
-      assert_select "tr", 3
+    assert_select "h1 a[href='#{user_path second_moderator_user}']", :text => second_moderator_user.display_name
+    assert_select "table#block_list tbody", :count => 1 do
+      assert_select "tr", 2
       assert_select "a[href='#{user_block_path(expired_block)}']", 1
       assert_select "a[href='#{user_block_path(revoked_block)}']", 1
     end