Fixed unit tests and fixture loading for postgres. The foreign keys were playing...
authorMatt Amos <zerebubuth@gmail.com>
Sat, 28 Mar 2009 20:18:26 +0000 (20:18 +0000)
committerMatt Amos <zerebubuth@gmail.com>
Sat, 28 Mar 2009 20:18:26 +0000 (20:18 +0000)
26 files changed:
test/functional/changeset_controller_test.rb
test/test_helper.rb
test/unit/changeset_tag_test.rb
test/unit/changeset_test.rb
test/unit/diary_comment_test.rb
test/unit/diary_entry_test.rb
test/unit/friend_test.rb
test/unit/message_test.rb
test/unit/node_tag_test.rb
test/unit/node_test.rb
test/unit/old_node_tag_test.rb
test/unit/old_node_test.rb
test/unit/old_relation_tag_test.rb
test/unit/old_way_tag_test.rb
test/unit/relation_member_test.rb
test/unit/relation_tag_test.rb
test/unit/relation_test.rb
test/unit/trace_test.rb
test/unit/tracepoint_test.rb
test/unit/tracetag_test.rb
test/unit/user_preference_test.rb
test/unit/user_test.rb
test/unit/user_token_test.rb
test/unit/way_node_test.rb
test/unit/way_tag_test.rb
test/unit/way_test.rb

index 4c98fb36d037fabb064c9aded73e2172e44fbc2e..7faa5602899cbb49017931d3dcc4e9600efa4f07 100644 (file)
@@ -240,6 +240,20 @@ EOF
     assert_equal false, Node.find(node.id).visible
   end
 
+  def test_repeated_changeset_create
+    30.times do
+      basic_authorization "test@openstreetmap.org", "test"
+    
+      # create a temporary changeset
+      content "<osm><changeset>" +
+        "<tag k='created_by' v='osm test suite checking changesets'/>" + 
+        "</changeset></osm>"
+      put :create
+      assert_response :success
+      changeset_id = @response.body.to_i
+    end
+  end
+
   ##
   # test that deleting stuff in a transaction doesn't bypass the checks
   # to ensure that used elements are not deleted.
index 88a6fbe4ac9ad139f549f5bb19c6d42bee7d083b..8c270c6820e34fbe0673295ffb0e2d8e2f0fb9c7 100644 (file)
@@ -25,43 +25,52 @@ class Test::Unit::TestCase
   # then set this back to true.
   self.use_instantiated_fixtures  = false
 
+
   # Load standard fixtures needed to test API methods
   def self.api_fixtures
     #print "setting up the api_fixtures"
     fixtures :users, :changesets, :changeset_tags
 
     fixtures :current_nodes, :nodes
-    set_fixture_class :current_nodes => Node
-    set_fixture_class :nodes => OldNode
+    set_fixture_class :current_nodes => 'Node'
+    set_fixture_class :nodes => 'OldNode'
 
     fixtures  :current_node_tags,:node_tags
-    set_fixture_class :current_node_tags => NodeTag
-    set_fixture_class :node_tags => OldNodeTag
-
-    fixtures :current_ways, :current_way_nodes, :current_way_tags
-    set_fixture_class :current_ways => Way
-    set_fixture_class :current_way_nodes => WayNode
-    set_fixture_class :current_way_tags => WayTag
-
-    fixtures :ways, :way_nodes, :way_tags
-    set_fixture_class :ways => OldWay
-    set_fixture_class :way_nodes => OldWayNode
-    set_fixture_class :way_tags => OldWayTag
-
-    fixtures :current_relations, :current_relation_members, :current_relation_tags
-    set_fixture_class :current_relations => Relation
-    set_fixture_class :current_relation_members => RelationMember
-    set_fixture_class :current_relation_tags => RelationTag
-
-    fixtures :relations, :relation_members, :relation_tags
-    set_fixture_class :relations => OldRelation
-    set_fixture_class :relation_members => OldRelationMember
-    set_fixture_class :relation_tags => OldRelationTag
+    set_fixture_class :current_node_tags => 'NodeTag'
+    set_fixture_class :node_tags => 'OldNodeTag'
+
+    fixtures :current_ways
+    set_fixture_class :current_ways => 'Way'
+
+    fixtures :current_way_nodes, :current_way_tags
+    set_fixture_class :current_way_nodes => 'WayNode'
+    set_fixture_class :current_way_tags => 'WayTag'
+
+    fixtures :ways
+    set_fixture_class :ways => 'OldWay'
+
+    fixtures :way_nodes, :way_tags
+    set_fixture_class :way_nodes => 'OldWayNode'
+    set_fixture_class :way_tags => 'OldWayTag'
+
+    fixtures :current_relations
+    set_fixture_class :current_relations => 'Relation'
+
+    fixtures :current_relation_members, :current_relation_tags
+    set_fixture_class :current_relation_members => 'RelationMember'
+    set_fixture_class :current_relation_tags => 'RelationTag'
+
+    fixtures :relations
+    set_fixture_class :relations => 'OldRelation'
+
+    fixtures :relation_members, :relation_tags
+    set_fixture_class :relation_members => 'OldRelationMember'
+    set_fixture_class :relation_tags => 'OldRelationTag'
     
     fixtures :gpx_files, :gps_points, :gpx_file_tags
-    set_fixture_class :gpx_files => Trace
-    set_fixture_class :gps_points => Tracepoint
-    set_fixture_class :gpx_file_tags => Tracetag
+    set_fixture_class :gpx_files => 'Trace'
+    set_fixture_class :gps_points => 'Tracepoint'
+    set_fixture_class :gpx_file_tags => 'Tracetag'
   end
 
   ##
index e0201d53816c470fd64e27fb2901c9a0d03db566..c89f426ccc02ccb3ae316f33cfb4266f842e3820 100644 (file)
@@ -1,7 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class ChangesetTagTest < Test::Unit::TestCase
-  fixtures :changeset_tags
+  api_fixtures
 
   def test_changeset_tag_count
     assert_equal 1, ChangesetTag.count
index 4550ffba57700238b97d73d28d9c05948292390c..448289aaf838a0fe26bb5b416be2ae1eaad38fa1 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class ChangesetTest < Test::Unit::TestCase
-  fixtures :changesets
-  
+  api_fixtures
   
   def test_changeset_count
     assert_equal 6, Changeset.count
index d7f30a69c5d3b518b00807f6e158fa18066f9b87..8e2bbf32c215cf177f5c375b850243404ecf5a5e 100644 (file)
@@ -1,9 +1,9 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class DiaryCommentTest < Test::Unit::TestCase
+  api_fixtures
   fixtures :diary_comments
   
-  
   def test_diary_comment_count
     assert_equal 1, DiaryComment.count
   end
index 6b2800d18bb803844a99d16fd7d09f36b6cc2e63..e28e03a105704fb6092ac4fdc79691cda1a7bd58 100644 (file)
@@ -1,9 +1,9 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class DiaryEntryTest < Test::Unit::TestCase
+  api_fixtures
   fixtures :diary_entries
   
-  
   def test_diary_entry_count
     assert_equal 2, DiaryEntry.count
   end
index fd8b5033f0811bdbb64468a1f3b8bd202ffad863..8c93146ae11b2fd3d32dbd03834b9e5972505cb4 100644 (file)
@@ -1,9 +1,9 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class FriendTest < Test::Unit::TestCase
+  api_fixtures
   fixtures :friends
-  
-  
+
   def test_friend_count
     assert_equal 1, Friend.count
   end
index 3b83bf95aec0bca8d81661be765922954cd7101f..a732aa58633d67cc1ad98fca66cbae1a48b3d0ed 100644 (file)
@@ -1,7 +1,8 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class MessageTest < Test::Unit::TestCase
-  fixtures :messages, :users
+  api_fixtures
+  fixtures :messages
 
   EURO = "\xe2\x82\xac" #euro symbol
 
index 2ff9f9f00563addb235919c6b25eae0f38f1ae59..bd7d9f6e330daea1656d0e3d21acf83dc0ac1114 100644 (file)
@@ -1,9 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class NodeTagTest < Test::Unit::TestCase
-  fixtures :current_node_tags, :current_nodes
-  set_fixture_class :current_nodes => Node
-  set_fixture_class :current_node_tags => NodeTag
+  api_fixtures
   
   def test_tag_count
     assert_equal 6, NodeTag.count
index 13dea88dac5a7788fd6cbd688b1cd7d5c56115c1..51cf82d123d1670cb0ef7f1704ec325d4831166d 100644 (file)
@@ -1,12 +1,8 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class NodeTest < Test::Unit::TestCase
-  fixtures :changesets, :current_nodes, :users, :current_node_tags, :nodes, :node_tags
-  set_fixture_class :current_nodes => Node
-  set_fixture_class :nodes => OldNode
-  set_fixture_class :node_tags => OldNodeTag
-  set_fixture_class :current_node_tags => NodeTag
-    
+  api_fixtures
+
   def test_node_too_far_north
          invalid_node_test(:node_too_far_north)
   end
index 4971843489a88853d9f534d671702f4455f1a7fd..9696776537090459d565aacb36bc2820a43f69b4 100644 (file)
@@ -1,10 +1,8 @@
 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
-  
+  api_fixtures
+
   def test_old_node_tag_count
     assert_equal 8, OldNodeTag.count, "Unexpected number of fixtures loaded."
   end
index bdd685388821ebf7ecdff6a3c6b45a36533da892..4915e40b641b4a90ba4d0717cfeb5f3f9d4b80c0 100644 (file)
@@ -1,12 +1,8 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class OldNodeTest < Test::Unit::TestCase
-  set_fixture_class :current_nodes => Node
-  set_fixture_class :nodes => OldNode
-  set_fixture_class :node_tags => OldNodeTag
-  set_fixture_class :current_node_tags => NodeTag
-  fixtures :current_nodes, :users, :current_node_tags, :nodes, :node_tags
-    
+  api_fixtures
+
   def test_node_too_far_north
          invalid_node_test(:node_too_far_north)
   end
index d651810c0ff4b74f2549130e5eab9fcaf53f382a..aee2901cdfe8df7464506254447d9c465a20244d 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class OldRelationTagTest < Test::Unit::TestCase
-  fixtures :relation_tags
-  set_fixture_class :relation_tags => OldRelationTag
+  api_fixtures
   
   def test_tag_count
     assert_equal 3, OldRelationTag.count
index 8210ef0c4123d13817ea77c60d04ecf93f61409f..b2724cb0139c9cf22046ecc3b3e33d2e441b8644 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class WayTagTest < Test::Unit::TestCase
-  fixtures :way_tags
-  set_fixture_class :way_tags => OldWayTag
+  api_fixtures
   
   def test_tag_count
     assert_equal 3, OldWayTag.count
index d67ac3462cb47eb90b4f52bc6c29212d451bf4fc..f0590ef71a7e10d45c5d5db29e549f6bb2af03a0 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class RelationMemberTest < Test::Unit::TestCase
-  fixtures :current_relation_members
-  set_fixture_class :current_relation_members => RelationMember
+  api_fixtures
   
   def test_relation_member_count
     assert_equal 5, RelationMember.count
index f93e689ca59b9fb103b2121dd8d8b59e40e28203..5c008fc34c415759dc2e8bda5f2819177e207416 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class RelationTagTest < Test::Unit::TestCase
-  fixtures :current_relation_tags
-  set_fixture_class :current_relation_tags => RelationTag
+  api_fixtures
   
   def test_relation_tag_count
     assert_equal 3, RelationTag.count
index b5b6391ab570d2d72a1d817de275eb0e8a2efe7a..36aad7c253257f78353558a1e7fd0c8bf3ffa13b 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class RelationTest < Test::Unit::TestCase
-  fixtures :current_relations
-  set_fixture_class :current_relations => Relation
+  api_fixtures
   
   def test_relation_count
     assert_equal 3, Relation.count
index 706455aa2e9263cbf3737cb495b3b7219aed540b..638003962fa2f1caf9417fb517c5d3f543f2fa88 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class TraceTest < Test::Unit::TestCase
-  fixtures :gpx_files
-  set_fixture_class :gpx_files => Trace
+  api_fixtures
   
   def test_trace_count
     assert_equal 1, Trace.count
index 5d4100530ebcfef51f93dc1de2bcc65bb9dbc990..80534c2cba32edb0b82d06edd9beb1b1e217f8eb 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class TracepointTest < Test::Unit::TestCase
-  fixtures :gps_points
-  set_fixture_class :gps_points => Tracepoint
+  api_fixtures
   
   def test_tracepoint_count
     assert_equal 1, Tracepoint.count
index 4eaf41ed8df8edc959dba15e89811af6d1183301..c61913ff0ff707a74d68eba3f4a3e055c0a02252 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class TracetagTest < Test::Unit::TestCase
-  fixtures :gpx_file_tags
-  set_fixture_class :gpx_file_tags => Tracetag
+  api_fixtures
   
   def test_tracetag_count
     assert_equal 1, Tracetag.count
index 2118fcd395df252d0c40d6cc6188cb35109b650c..df9e1e9b277ebddcea902703154458c3e7433b3d 100644 (file)
@@ -1,7 +1,8 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class UserPreferenceTest < ActiveSupport::TestCase
-  fixtures :users, :user_preferences
+  api_fixtures
+  fixtures :user_preferences
 
   # This checks to make sure that there are two user preferences
   # stored in the test database.
index c0df4b716984184aeaa49db5dca0dea810c0b85b..f87b5b6fc351df9fee3f5782bac97f1c903e1a77 100644 (file)
@@ -1,8 +1,9 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class UserTest < Test::Unit::TestCase
-  fixtures :users
-  
+  api_fixtures
+  fixtures :friends
+
   def test_invalid_with_empty_attributes
     user = User.new
     assert !user.valid?
index 2bc1a2dce724d2c0e7feb092fc812a21d83ab0d5..83a36f8d97c9eee2ed53da7e435ba801057f6692 100644 (file)
@@ -1,8 +1,9 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class UserTokenTest < Test::Unit::TestCase
-  fixtures :users
-  
+  api_fixtures
+  fixtures :user_tokens
+
   def test_user_token_count
     assert_equal 0, UserToken.count
   end
index 1871eae9d9c7437923c92bfb3172ffc7322d4b66..acc62d3306aeaee8156c7db4bab5b9d86e4255e5 100644 (file)
@@ -1,9 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class WayNodeTest < Test::Unit::TestCase
-  fixtures :way_nodes, :current_way_nodes
-  set_fixture_class :way_nodes=>OldWayNode
-  set_fixture_class :current_way_nodes=>WayNode
+  api_fixtures
   
   def test_way_nodes_count
     assert_equal 4, WayNode.count
index b1a7d2256239d2bcb91969f4abd46f387c9f4797..018263da11624800c7fda66ee3dc58e558aa3be1 100644 (file)
@@ -1,8 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class WayTagTest < Test::Unit::TestCase
-  fixtures :current_way_tags
-  set_fixture_class :current_way_tags => WayTag
+  api_fixtures
   
   def test_way_tag_count
     assert_equal 3, WayTag.count
index 584a30daaa3698a4dd4f1ef9bcdcd686ab1fd115..55ab092ea62da42bc49da01d973f6e8f613b0979 100644 (file)
@@ -3,7 +3,6 @@ require File.dirname(__FILE__) + '/../test_helper'
 class WayTest < Test::Unit::TestCase
   api_fixtures
 
-  
   # Check that we have the correct number of currnet ways in the db
   # This will need to updated whenever the current_ways.yml is updated
   def test_db_count