]> git.openstreetmap.org Git - rails.git/blobdiff - test/unit/old_node_test.rb
Update to iD v1.3.6
[rails.git] / test / unit / old_node_test.rb
index eb68baafb26521497c2723f7debdc5bf358fd643..fdd61f0900ffaf815bf1dded171ff2e587a9edca 100644 (file)
@@ -1,14 +1,14 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
-class OldNodeTest < Test::Unit::TestCase
+class OldNodeTest < ActiveSupport::TestCase
   api_fixtures
   
-  def test_old_node_count
-    assert_equal 19, OldNode.count
+  def test_node_count
+    assert_equal 21, OldNode.count
   end
 
   def test_node_too_far_north
-         invalid_node_test(:node_too_far_north)
+    invalid_node_test(:node_too_far_north)
   end
   
   def test_node_north_limit
@@ -48,7 +48,7 @@ class OldNodeTest < Test::Unit::TestCase
   # the fixture
   def valid_node_test(nod)
     node = nodes(nod)
-    dbnode = Node.find(node.id)
+    dbnode = Node.find(node.node_id)
     assert_equal dbnode.lat, node.latitude.to_f/SCALE
     assert_equal dbnode.lon, node.longitude.to_f/SCALE
     assert_equal dbnode.changeset_id, node.changeset_id
@@ -56,7 +56,7 @@ class OldNodeTest < Test::Unit::TestCase
     assert_equal dbnode.visible, node.visible
     assert_equal dbnode.timestamp, node.timestamp
     #assert_equal node.tile, QuadTile.tile_for_point(nodes(nod).lat, nodes(nod).lon)
-    assert_valid node
+    assert node.valid?
   end
   
   # This helpermethod will check to make sure that a node is outwith the world, 
@@ -64,7 +64,7 @@ class OldNodeTest < Test::Unit::TestCase
   # fixture
   def invalid_node_test(nod)
     node = nodes(nod)
-    dbnode = Node.find(node.id)
+    dbnode = Node.find(node.node_id)
     assert_equal dbnode.lat, node.latitude.to_f/SCALE
     assert_equal dbnode.lon, node.longitude.to_f/SCALE
     assert_equal dbnode.changeset_id, node.changeset_id
@@ -74,6 +74,55 @@ class OldNodeTest < Test::Unit::TestCase
     #assert_equal node.tile, QuadTile.tile_for_point(nodes(nod).lat, nodes(nod).lon)
     assert_equal false, node.valid?
   end
-  
 
+  def test_node_tags
+    node = nodes(:node_with_versions_v1)
+    tags = OldNode.find(node.id).old_tags.order(:k)
+    assert_equal 0, tags.count
+
+    node = nodes(:node_with_versions_v2)
+    tags = OldNode.find(node.id).old_tags.order(:k)
+    assert_equal 0, tags.count
+
+    node = nodes(:node_with_versions_v3)
+    tags = OldNode.find(node.id).old_tags.order(:k)
+    assert_equal 3, tags.count
+    assert_equal "testing", tags[0].k 
+    assert_equal "added in node version 3", tags[0].v
+    assert_equal "testing three", tags[1].k
+    assert_equal "added in node version 3", tags[1].v
+    assert_equal "testing two", tags[2].k
+    assert_equal "added in node version 3", tags[2].v
+
+    node = nodes(:node_with_versions_v4)
+    tags = OldNode.find(node.id).old_tags.order(:k)
+    assert_equal 2, tags.count
+    assert_equal "testing", tags[0].k 
+    assert_equal "added in node version 3", tags[0].v
+    assert_equal "testing two", tags[1].k
+    assert_equal "modified in node version 4", tags[1].v
+  end
+
+  def test_tags
+    node = nodes(:node_with_versions_v1)
+    tags = OldNode.find(node.id).tags
+    assert_equal 0, tags.size
+
+    node = nodes(:node_with_versions_v2)
+    tags = OldNode.find(node.id).tags
+    assert_equal 0, tags.size
+
+    node = nodes(:node_with_versions_v3)
+    tags = OldNode.find(node.id).tags
+    assert_equal 3, tags.size
+    assert_equal "added in node version 3", tags["testing"]
+    assert_equal "added in node version 3", tags["testing two"]
+    assert_equal "added in node version 3", tags["testing three"]
+
+    node = nodes(:node_with_versions_v4)
+    tags = OldNode.find(node.id).tags
+    assert_equal 2, tags.size
+    assert_equal "added in node version 3", tags["testing"]
+    assert_equal "modified in node version 4", tags["testing two"]
+  end
 end