]> git.openstreetmap.org Git - rails.git/commitdiff
Add links to element versions from version headings
authorAnton Khorev <tony29@yandex.ru>
Tue, 16 Jan 2024 01:35:28 +0000 (04:35 +0300)
committerAnton Khorev <tony29@yandex.ru>
Tue, 23 Jan 2024 19:08:39 +0000 (22:08 +0300)
app/views/browse/_common_details.html.erb
test/controllers/browse_controller_test.rb

index b28e72c752e652e7f4ebfe1a528b9be1874c6741..fa8eeb3a5fef1da55fa28918c0678a637219b594 100644 (file)
@@ -1,6 +1,6 @@
 <h4>
   <%= t "browse.version" %>
-  #<%= common_details.version %>
+  #<%= link_to common_details.version, :controller => "old_#{@type.pluralize}", :action => :show, :version => common_details.version %>
 </h4>
 
 <p class="fst-italic">
index 674a318ed9173fd6e9a0cf0df149c1075d316fb9..ed71e83fc7b7adb14ad6fbf07b70e9a05fc406b1 100644 (file)
@@ -39,35 +39,63 @@ class BrowseControllerTest < ActionDispatch::IntegrationTest
   end
 
   def test_read_relation
-    browse_check :relation_path, create(:relation).id, "browse/feature"
+    relation = create(:relation)
+    browse_check :relation_path, relation.id, "browse/feature"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1
+    end
+    assert_select "a[href='#{api_relation_path relation}']", :count => 1
   end
 
   def test_read_relation_history
-    browse_check :relation_history_path, create(:relation, :with_history).id, "browse/history"
+    relation = create(:relation, :with_history)
+    browse_check :relation_history_path, relation.id, "browse/history"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1
+    end
   end
 
   def test_read_way
-    browse_check :way_path, create(:way).id, "browse/feature"
+    way = create(:way)
+    browse_check :way_path, way.id, "browse/feature"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1
+    end
+    assert_select "a[href='#{api_way_path way}']", :count => 1
   end
 
   def test_read_way_history
-    browse_check :way_history_path, create(:way, :with_history).id, "browse/history"
+    way = create(:way, :with_history)
+    browse_check :way_history_path, way.id, "browse/history"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1
+    end
   end
 
   def test_read_node
     node = create(:node)
     browse_check :node_path, node.id, "browse/feature"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
+    end
     assert_select "a[href='#{api_node_path node}']", :count => 1
   end
 
   def test_read_deleted_node
     node = create(:node, :visible => false)
     browse_check :node_path, node.id, "browse/feature"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
+    end
     assert_select "a[href='#{api_node_path node}']", :count => 0
   end
 
   def test_read_node_history
-    browse_check :node_history_path, create(:node, :with_history).id, "browse/history"
+    node = create(:node, :with_history)
+    browse_check :node_history_path, node.id, "browse/history"
+    assert_select "h4", /^Version/ do
+      assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
+    end
   end
 
   def test_read_changeset