Rename all ID columns that aren't unique

Having a table with a column called ID that is only part of the
primary key really doesn't work as rails likes to treat ID as a
special name so it becomes impossible to assign to it or read it.
This commit is contained in:
Tom Hughes 2011-09-25 14:42:33 +01:00
parent b63ce5d460
commit fc25c3d412
55 changed files with 346 additions and 356 deletions

View file

@ -11,7 +11,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = ChangesetTag.new
tag.id = 1
tag.changeset_id = 1
tag.k = key*i
tag.v = "v"
assert tag.valid?
@ -22,7 +22,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = ChangesetTag.new
tag.id = 1
tag.changeset_id = 1
tag.k = "k"
tag.v = val*i
assert tag.valid?
@ -32,7 +32,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |k|
tag = ChangesetTag.new
tag.id = 1
tag.changeset_id = 1
tag.k = k
tag.v = "v"
assert !tag.valid?, "Key #{k} should be too long"
@ -43,7 +43,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["v"*256].each do |v|
tag = ChangesetTag.new
tag.id = 1
tag.changeset_id = 1
tag.k = "k"
tag.v = v
assert !tag.valid?, "Value #{v} should be too long"
@ -54,12 +54,12 @@ class ChangesetTagTest < ActiveSupport::TestCase
def test_empty_tag_invalid
tag = ChangesetTag.new
assert !tag.valid?, "Empty tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:changeset].any?
end
def test_uniqueness
tag = ChangesetTag.new
tag.id = changeset_tags(:changeset_1_tag_1).id
tag.changeset_id = changeset_tags(:changeset_1_tag_1).id
tag.k = changeset_tags(:changeset_1_tag_1).k
tag.v = changeset_tags(:changeset_1_tag_1).v
assert tag.new_record?

View file

@ -21,7 +21,7 @@ class NodeTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = NodeTag.new
tag.id = current_node_tags(:t1).id
tag.node_id = current_node_tags(:t1).node_id
tag.k = key*i
tag.v = "v"
assert tag.valid?
@ -32,7 +32,7 @@ class NodeTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = NodeTag.new
tag.id = current_node_tags(:t1).id
tag.node_id = current_node_tags(:t1).node_id
tag.k = "k"
tag.v = val*i
assert tag.valid?
@ -42,7 +42,7 @@ class NodeTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = NodeTag.new
tag.id = current_node_tags(:t1).id
tag.node_id = current_node_tags(:t1).node_id
tag.k = i
tag.v = "v"
assert !tag.valid?, "Key should be too long"
@ -53,7 +53,7 @@ class NodeTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["k"*256].each do |i|
tag = NodeTag.new
tag.id = current_node_tags(:t1).id
tag.node_id = current_node_tags(:t1).node_id
tag.k = "k"
tag.v = i
assert !tag.valid?, "Value should be too long"
@ -64,12 +64,12 @@ class NodeTagTest < ActiveSupport::TestCase
def test_empty_node_tag_invalid
tag = NodeTag.new
assert !tag.valid?, "Empty tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:node].any?
end
def test_uniqueness
tag = NodeTag.new
tag.id = current_node_tags(:t1).id
tag.node_id = current_node_tags(:t1).node_id
tag.k = current_node_tags(:t1).k
tag.v = current_node_tags(:t1).v
assert tag.new_record?

View file

@ -8,7 +8,7 @@ class NodeTest < ActiveSupport::TestCase
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
@ -92,8 +92,8 @@ class NodeTest < ActiveSupport::TestCase
assert_equal node_template.visible, node.visible
assert_equal node_template.timestamp.to_i, node.timestamp.to_i
assert_equal OldNode.find(:all, :conditions => [ "id = ?", node_template.id ]).length, 1
old_node = OldNode.find(:first, :conditions => [ "id = ?", node_template.id ])
assert_equal OldNode.where(:node_id => node_template.id).count, 1
old_node = OldNode.where(:node_id => node_template.id).first
assert_not_nil old_node
assert_equal node_template.latitude, old_node.latitude
assert_equal node_template.longitude, old_node.longitude
@ -107,14 +107,14 @@ class NodeTest < ActiveSupport::TestCase
node_template = Node.find(current_nodes(:visible_node).id)
assert_not_nil node_template
assert_equal OldNode.find(:all, :conditions => [ "id = ?", node_template.id ]).length, 1
old_node_template = OldNode.find(:first, :conditions => [ "id = ?", node_template.id ])
assert_not_nil old_node_template
assert_equal OldNode.where(:node_id => node_template.id).count, 1
node = Node.find(node_template.id)
assert_not_nil node
node_template.latitude = 12.3456
node_template.longitude = 65.4321
#node_template.tags = "updated=yes"
assert node_template.update_from(old_node_template, users(:normal_user))
assert node.update_from(node_template, users(:normal_user))
node = Node.find(node_template.id)
assert_not_nil node
@ -123,49 +123,43 @@ class NodeTest < ActiveSupport::TestCase
assert_equal node_template.changeset_id, node.changeset_id
assert_equal node_template.visible, node.visible
#assert_equal node_template.tags, node.tags
assert_equal node_template.timestamp.to_i, node.timestamp.to_i
assert_equal OldNode.find(:all, :conditions => [ "id = ?", node_template.id ]).length, 2
assert_equal OldNode.find(:all, :conditions => [ "id = ? and timestamp = ?", node_template.id, node_template.timestamp ]).length, 1
old_node = OldNode.find(:first, :conditions => [ "id = ? and timestamp = ?", node_template.id, node_template.timestamp ])
assert_equal OldNode.where(:node_id => node_template.id).count, 2
old_node = OldNode.where(:node_id => node_template.id, :version => 2).first
assert_not_nil old_node
assert_equal node_template.latitude, old_node.latitude
assert_equal node_template.longitude, old_node.longitude
assert_equal node_template.changeset_id, old_node.changeset_id
assert_equal node_template.visible, old_node.visible
#assert_equal node_template.tags, old_node.tags
assert_equal node_template.timestamp.to_i, old_node.timestamp.to_i
end
def test_delete
node_template = Node.find(current_nodes(:visible_node))
assert_not_nil node_template
assert_equal OldNode.find(:all, :conditions => [ "id = ?", node_template.id ]).length, 1
old_node_template = OldNode.find(:first, :conditions => [ "id = ?", node_template.id ])
assert_not_nil old_node_template
assert_equal OldNode.where(:node_id => node_template.id).count, 1
node = Node.find(node_template.id)
assert_not_nil node
assert node_template.delete_with_history!(old_node_template, users(:normal_user))
assert node.delete_with_history!(node_template, users(:normal_user))
node = Node.find(node_template.id)
assert_not_nil node
assert_equal node_template.latitude, node.latitude
assert_equal node_template.longitude, node.longitude
assert_equal node_template.changeset_id, node.changeset_id
assert_equal node_template.visible, node.visible
assert_equal false, node.visible
#assert_equal node_template.tags, node.tags
assert_equal node_template.timestamp.to_i, node.timestamp.to_i
assert_equal OldNode.find(:all, :conditions => [ "id = ?", node_template.id ]).length, 2
assert_equal OldNode.find(:all, :conditions => [ "id = ? and timestamp = ?", node_template.id, node_template.timestamp ]).length, 1
old_node = OldNode.find(:first, :conditions => [ "id = ? and timestamp = ?", node_template.id, node_template.timestamp ])
assert_equal OldNode.where(:node_id => node_template.id).count, 2
old_node = OldNode.where(:node_id => node_template.id, :version => 2).first
assert_not_nil old_node
assert_equal node_template.latitude, old_node.latitude
assert_equal node_template.longitude, old_node.longitude
assert_equal node_template.changeset_id, old_node.changeset_id
assert_equal node_template.visible, old_node.visible
assert_equal false, old_node.visible
#assert_equal node_template.tags, old_node.tags
assert_equal node_template.timestamp.to_i, old_node.timestamp.to_i
end
def test_from_xml_no_id

View file

@ -11,7 +11,7 @@ class OldNodeTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = OldNodeTag.new
tag.id = node_tags(:t1).id
tag.node_id = node_tags(:t1).node_id
tag.version = node_tags(:t1).version
tag.k = key*i
tag.v = "v"
@ -23,7 +23,7 @@ class OldNodeTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = OldNodeTag.new
tag.id = node_tags(:t1).id
tag.node_id = node_tags(:t1).node_id
tag.version = node_tags(:t1).version
tag.k = "k"
tag.v = val*i
@ -34,7 +34,7 @@ class OldNodeTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = OldNodeTag.new
tag.id = node_tags(:t1).id
tag.node_id = node_tags(:t1).node_id
tag.version = node_tags(:t1).version
tag.k = i
tag.v = "v", "Key should be too long"
@ -46,7 +46,7 @@ class OldNodeTest < ActiveSupport::TestCase
def test_length_value_invalid
["k"*256].each do |i|
tag = OldNodeTag.new
tag.id = node_tags(:t1).id
tag.node_id = node_tags(:t1).node_id
tag.version = node_tags(:t1).version
tag.k = "k"
tag.v = i
@ -55,16 +55,15 @@ class OldNodeTest < ActiveSupport::TestCase
end
end
def test_empty_old_node_tag_invalid
def test_empty_tag_invalid
tag = OldNodeTag.new
assert !tag.valid?, "Empty tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:version].any?
assert tag.errors[:old_node].any?
end
def test_uniqueness
tag = OldNodeTag.new
tag.id = node_tags(:t1).id
tag.node_id = node_tags(:t1).node_id
tag.version = node_tags(:t1).version
tag.k = node_tags(:t1).k
tag.v = node_tags(:t1).v

View file

@ -8,7 +8,7 @@ class OldNodeTest < ActiveSupport::TestCase
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 < ActiveSupport::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
@ -64,7 +64,7 @@ class OldNodeTest < ActiveSupport::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,4 @@ class OldNodeTest < ActiveSupport::TestCase
#assert_equal node.tile, QuadTile.tile_for_point(nodes(nod).lat, nodes(nod).lon)
assert_equal false, node.valid?
end
end

View file

@ -11,7 +11,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = OldRelationTag.new
tag.id = relation_tags(:t1).id
tag.relation_id = relation_tags(:t1).relation_id
tag.version = 1
tag.k = key*i
tag.v = "v"
@ -23,7 +23,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = OldRelationTag.new
tag.id = relation_tags(:t1).id
tag.relation_id = relation_tags(:t1).relation_id
tag.version = 1
tag.k = "k"
tag.v = val*i
@ -34,7 +34,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = OldRelationTag.new
tag.id = relation_tags(:t1).id
tag.relation_id = relation_tags(:t1).relation_id
tag.version = 1
tag.k = i
tag.v = "v"
@ -46,7 +46,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["k"*256].each do |i|
tag = OldRelationTag.new
tag.id = relation_tags(:t1).id
tag.relation_id = relation_tags(:t1).relation_id
tag.version = 1
tag.k = "k"
tag.v = i
@ -55,15 +55,15 @@ class OldRelationTagTest < ActiveSupport::TestCase
end
end
def test_empty_node_tag_invalid
def test_empty_tag_invalid
tag = OldRelationTag.new
assert !tag.valid?, "Empty tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:old_relation].any?
end
def test_uniqueness
tag = OldRelationTag.new
tag.id = relation_tags(:t1).id
tag.relation_id = relation_tags(:t1).relation_id
tag.version = relation_tags(:t1).version
tag.k = relation_tags(:t1).k
tag.v = relation_tags(:t1).v

View file

@ -11,7 +11,7 @@ class WayTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = OldWayTag.new
tag.id = way_tags(:t1).id
tag.way_id = way_tags(:t1).way_id
tag.version = 1
tag.k = key*i
tag.v = "v"
@ -23,7 +23,7 @@ class WayTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = OldWayTag.new
tag.id = way_tags(:t1).id
tag.way_id = way_tags(:t1).way_id
tag.version = 1
tag.k = "k"
tag.v = val*i
@ -34,7 +34,7 @@ class WayTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = OldWayTag.new
tag.id = way_tags(:t1).id
tag.way_id = way_tags(:t1).way_id
tag.version = 1
tag.k = i
tag.v = "v"
@ -46,7 +46,7 @@ class WayTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["k"*256].each do |i|
tag = OldWayTag.new
tag.id = way_tags(:t1).id
tag.way_id = way_tags(:t1).way_id
tag.version = 1
tag.k = "k"
tag.v = i
@ -55,15 +55,15 @@ class WayTagTest < ActiveSupport::TestCase
end
end
def test_empty_node_tag_invalid
tag = OldNodeTag.new
def test_empty_tag_invalid
tag = OldWayTag.new
assert !tag.valid?, "Empty tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:old_way].any?
end
def test_uniqueness
tag = OldWayTag.new
tag.id = way_tags(:t1).id
tag.way_id = way_tags(:t1).way_id
tag.version = way_tags(:t1).version
tag.k = way_tags(:t1).k
tag.v = way_tags(:t1).v

View file

@ -11,7 +11,7 @@ class RelationTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = RelationTag.new
tag.id = 1
tag.relation_id = 1
tag.k = key*i
tag.v = "v"
assert tag.valid?
@ -22,7 +22,7 @@ class RelationTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = RelationTag.new
tag.id = 1
tag.relation_id = 1
tag.k = "k"
tag.v = val*i
assert tag.valid?
@ -32,7 +32,7 @@ class RelationTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = RelationTag.new
tag.id = 1
tag.relation_id = 1
tag.k = i
tag.v = "v"
assert !tag.valid?, "Key #{i} should be too long"
@ -43,7 +43,7 @@ class RelationTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["v"*256].each do |i|
tag = RelationTag.new
tag.id = 1
tag.relation_id = 1
tag.k = "k"
tag.v = i
assert !tag.valid?, "Value #{i} should be too long"
@ -54,12 +54,12 @@ class RelationTagTest < ActiveSupport::TestCase
def test_empty_tag_invalid
tag = RelationTag.new
assert !tag.valid?, "Empty relation tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:relation].any?
end
def test_uniquness
tag = RelationTag.new
tag.id = current_relation_tags(:t1).id
tag.relation_id = current_relation_tags(:t1).relation_id
tag.k = current_relation_tags(:t1).k
tag.v = current_relation_tags(:t1).v
assert tag.new_record?
@ -84,7 +84,7 @@ class RelationTagTest < ActiveSupport::TestCase
# assert_equal 0, RelationTag.count(:conditions => ['v=?', v])
# # make sure we select a tag on a relation which has more than one tag
# id = current_relations(:multi_tag_relation).id
# id = current_relations(:multi_tag_relation).relation_id
# tag = RelationTag.find(:first, :conditions => ["id = ?", id])
# tag.v = v
# tag.save!

View file

@ -2,9 +2,8 @@ require File.dirname(__FILE__) + '/../test_helper'
class WayNodeTest < ActiveSupport::TestCase
api_fixtures
def test_way_nodes_count
assert_equal 6, WayNode.count
end
end

View file

@ -11,7 +11,7 @@ class WayTagTest < ActiveSupport::TestCase
key = "k"
(0..255).each do |i|
tag = WayTag.new
tag.id = current_way_tags(:t1).id
tag.way_id = current_way_tags(:t1).way_id
tag.k = key*i
tag.v = current_way_tags(:t1).v
assert tag.valid?
@ -22,7 +22,7 @@ class WayTagTest < ActiveSupport::TestCase
val = "v"
(0..255).each do |i|
tag = WayTag.new
tag.id = current_way_tags(:t1).id
tag.way_id = current_way_tags(:t1).way_id
tag.k = "k"
tag.v = val*i
assert tag.valid?
@ -32,7 +32,7 @@ class WayTagTest < ActiveSupport::TestCase
def test_length_key_invalid
["k"*256].each do |i|
tag = WayTag.new
tag.id = current_way_tags(:t1).id
tag.way_id = current_way_tags(:t1).way_id
tag.k = i
tag.v = "v"
assert !tag.valid?, "Key #{i} should be too long"
@ -43,7 +43,7 @@ class WayTagTest < ActiveSupport::TestCase
def test_length_value_invalid
["v"*256].each do |i|
tag = WayTag.new
tag.id = current_way_tags(:t1).id
tag.way_id = current_way_tags(:t1).way_id
tag.k = "k"
tag.v = i
assert !tag.valid?, "Value #{i} should be too long"
@ -54,12 +54,12 @@ class WayTagTest < ActiveSupport::TestCase
def test_empty_tag_invalid
tag = WayTag.new
assert !tag.valid?, "Empty way tag should be invalid"
assert tag.errors[:id].any?
assert tag.errors[:way].any?
end
def test_uniqueness
tag = WayTag.new
tag.id = current_way_tags(:t1).id
tag.way_id = current_way_tags(:t1).way_id
tag.k = current_way_tags(:t1).k
tag.v = current_way_tags(:t1).v
assert tag.new_record?