]> git.openstreetmap.org Git - rails.git/blobdiff - test/test_helper.rb
Disable SQL sessions in database readonly mode
[rails.git] / test / test_helper.rb
index 8c270c6820e34fbe0673295ffb0e2d8e2f0fb9c7..4972ee6d6e6b90b1d7fb14c8f2e54ed687fdf9e0 100644 (file)
@@ -3,7 +3,7 @@ require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
 require 'test_help'
 load 'composite_primary_keys/fixtures.rb'
 
-class Test::Unit::TestCase
+class ActiveSupport::TestCase
   # Transactional fixtures accelerate your tests by wrapping each test method
   # in a transaction that's rolled back on completion.  This ensures that the
   # test database remains unchanged so your fixtures don't have to be reloaded
@@ -71,6 +71,8 @@ class Test::Unit::TestCase
     set_fixture_class :gpx_files => 'Trace'
     set_fixture_class :gps_points => 'Tracepoint'
     set_fixture_class :gpx_file_tags => 'Tracetag'
+
+    fixtures :client_applications
   end
 
   ##
@@ -122,6 +124,23 @@ class Test::Unit::TestCase
   def content(c)
     @request.env["RAW_POST_DATA"] = c.to_s
   end
-
+  
+  # Used to check that the error header and the forbidden responses are given
+  # when the owner of the changset has their data not marked as public
+  def assert_require_public_data(msg = "Shouldn't be able to use API when the user's data is not public")
+    assert_response :forbidden, msg
+    assert_equal @response.headers['Error'], "You must make your edits public to upload new data", "Wrong error message"
+  end
+  
+  # Not sure this is the best response we could give
+  def assert_inactive_user(msg = "an inactive user shouldn't be able to access the API")
+    assert_response :unauthorized, msg
+    #assert_equal @response.headers['Error'], ""
+  end
+  
+  def assert_no_missing_translations(msg="")
+    assert_select "span[class=translation_missing]", false, "Missing translation #{msg}"
+  end
+  
   # Add more helper methods to be used by all tests here...
 end