X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/9a4ea6bfd09acd76533e29e1d4c22c6037909707..ad368d189f4842f18e81fd272c677e5d820a2da4:/test/unit/old_node_tag_test.rb diff --git a/test/unit/old_node_tag_test.rb b/test/unit/old_node_tag_test.rb index 4a9bcbfcb..af7a186d8 100644 --- a/test/unit/old_node_tag_test.rb +++ b/test/unit/old_node_tag_test.rb @@ -1,23 +1,21 @@ require File.dirname(__FILE__) + '/../test_helper' -class OldNodeTest < Test::Unit::TestCase - set_fixture_class :nodes => OldNode - set_fixture_class :node_tags => OldNodeTag - fixtures :users, :nodes, :node_tags - +class OldNodeTagTest < ActiveSupport::TestCase + api_fixtures + def test_old_node_tag_count - assert_equal 8, OldNodeTag.count, "Unexpected number of fixtures loaded." + assert_equal 9, OldNodeTag.count, "Unexpected number of fixtures loaded." end def test_length_key_valid 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" - assert_valid tag + assert tag.valid? end end @@ -25,42 +23,53 @@ class OldNodeTest < Test::Unit::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 - assert_valid tag + assert tag.valid? end end 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" assert !tag.valid? - assert tag.errors.invalid?(:k) + assert tag.errors[:k].any? end end 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 assert !tag.valid?, "Value should be too long" - assert tag.errors.invalid?(:v) + assert tag.errors[:v].any? 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.invalid?(:id) - assert tag.errors.invalid?(:version) + assert tag.errors[:old_node].any? + end + + def test_uniqueness + tag = OldNodeTag.new + 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 + assert tag.new_record? + assert !tag.valid? + assert_raise(ActiveRecord::RecordInvalid) {tag.save!} + assert tag.new_record? end end