]> git.openstreetmap.org Git - rails.git/commitdiff
Skip intermediate lengths when testing tag validity
authorAndy Allan <git@gravitystorm.co.uk>
Wed, 16 Jun 2021 08:53:57 +0000 (09:53 +0100)
committerAndy Allan <git@gravitystorm.co.uk>
Wed, 16 Jun 2021 08:53:57 +0000 (09:53 +0100)
It's really the upper and lower boundaries that we want to check,
and it's reasonable to assume all the intermediate values will work
fine if the boundary values are tested.

This also saves about 75% of the time taken and almost 85% of the
assertions when running all the model tests.

test/models/changeset_tag_test.rb
test/models/message_test.rb
test/models/node_tag_test.rb
test/models/old_node_tag_test.rb
test/models/old_relation_tag_test.rb
test/models/old_way_tag_test.rb
test/models/relation_tag_test.rb
test/models/user_preference_test.rb
test/models/way_tag_test.rb

index 1db2effd65aecf20c3588a93ef88a1525eaef722..90674fbbe420042b90237f86b7388d9a59819f9f 100644 (file)
@@ -5,7 +5,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
     changeset = create(:changeset)
 
     key = "k"
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag = ChangesetTag.new
       tag.changeset_id = changeset.id
       tag.k = key * i
@@ -18,7 +18,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
     changeset = create(:changeset)
 
     val = "v"
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag = ChangesetTag.new
       tag.changeset_id = changeset.id
       tag.k = "k"
index b1acd0805b2e23de1cd3990122bdfbcc16637873..99a4710753a4ec4fef62eddc79c6d26d02b0bc80 100644 (file)
@@ -32,7 +32,7 @@ class MessageTest < ActiveSupport::TestCase
   end
 
   def test_utf8_roundtrip
-    (1..255).each do |i|
+    [1, 255].each do |i|
       assert_message_ok("c", i)
       assert_message_ok(EURO, i)
     end
index 1a7125f08b7f6ac8be14637313837118bc156f30..47295770f540992bbda0e9327b0da39a01cf9918 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class NodeTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class NodeTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index f432d04b85c2fd8d680835133ee54d7a050eb075..62869c6adfff3e61023f08382c943c92ac32f1d8 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldNodeTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldNodeTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index a05e67ee704cb4846389b97c0fa5b07081e5ee23..dbdbf54c526f6c5ede048e3626766e827e4458d5 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldRelationTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index 565633063cc10e59ca1b34202aa188202acb5d97..d794cc275ea0eaff4e52ae6c962ecff830877f0e 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldWayTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldWayTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index e81b8b49c26eeeb018abb019f686b374f476e5c3..429e77a92f5997043fbb2fc87f4a0a8e8cf5d4f3 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class RelationTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class RelationTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index 952289d940d20a30cf32df656c70bfb8ea0ccbfc..d6f1dcce5698acaed266f2c3da979e2dc0179c44 100644 (file)
@@ -15,7 +15,7 @@ class UserPreferenceTest < ActiveSupport::TestCase
   def test_check_valid_length
     key = "k"
     val = "v"
-    (1..255).each do |i|
+    [1, 255].each do |i|
       up = UserPreference.new
       up.user = create(:user)
       up.k = key * i
index 990a4362789d2ccfb57c9c20e7e966886e70a8f5..5860786c6147d5c4a7e66b32310c40ef5775269e 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class WayTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class WayTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end