]> git.openstreetmap.org Git - rails.git/blobdiff - test/functional/api_controller_test.rb
Rationalise API error classes by getting of the render_opts method which
[rails.git] / test / functional / api_controller_test.rb
index 6a0c2e2ace32db5b599b8bbce63483b81eaf7f29..285556cd87ca2f4b3224cfd756a387c2e66de780 100644 (file)
@@ -18,10 +18,6 @@ class ApiControllerTest < ActionController::TestCase
     # reall reject it, however this is to test to see if the api changes.
   end
 
-  def basic_authorization(user, pass)
-    @request.env["HTTP_AUTHORIZATION"] = "Basic %s" % Base64.encode64("#{user}:#{pass}")
-  end
-
   # -------------------------------------
   # Test reading a bounding box.
   # -------------------------------------
@@ -45,7 +41,7 @@ class ApiControllerTest < ActionController::TestCase
       assert_select "bounds[minlon=#{minlon}][minlat=#{minlat}][maxlon=#{maxlon}][maxlat=#{maxlat}]", :count => 1
       assert_select "node[id=#{node.id}][lat=#{node.lat}][lon=#{node.lon}][version=#{node.version}][changeset=#{node.changeset_id}][visible=#{node.visible}][timestamp=#{node.timestamp.xmlschema}]", :count => 1 do
         # This should really be more generic
-        assert_select "tag[k=test][v=1]"
+        assert_select "tag[k='test'][v='yes']"
       end
       # Should also test for the ways and relation
     end
@@ -63,7 +59,7 @@ class ApiControllerTest < ActionController::TestCase
   end
   
   def test_tracepoints
-    point = gpx_files(:first_trace_file)
+    point = gpx_files(:public_trace_file)
     minlon = point.longitude-0.1
     minlat = point.latitude-0.1
     maxlon = point.longitude+0.1
@@ -151,16 +147,17 @@ class ApiControllerTest < ActionController::TestCase
   #  end
   #end
   
-  # MySQL requires that the C based functions are installed for this test to 
-  # work. More information is available from:
+  # MySQL and Postgres require that the C based functions are installed for 
+  # this test to work. More information is available from:
   # http://wiki.openstreetmap.org/index.php/Rails#Installing_the_quadtile_functions
+  # or by looking at the readme in db/README
   def test_changes_simple
     get :changes
     assert_response :success
     #print @response.body
     # As we have loaded the fixtures, we can assume that there are no 
     # changes recently
-    now = Time.now
+    now = Time.now.getutc
     hourago = now - 1.hour
     # Note that this may fail on a very slow machine, so isn't a great test
     assert_select "osm[version='#{API_VERSION}'][generator='#{GENERATOR}']:root", :count => 1 do
@@ -181,7 +178,7 @@ class ApiControllerTest < ActionController::TestCase
     1.upto(16) do |zoom|
       get :changes, :zoom => zoom
       assert_response :success
-      now = Time.now
+      now = Time.now.getutc
       hourago = now - 1.hour
       # Note that this may fail on a very slow machine, so isn't a great test
       assert_select "osm[version='#{API_VERSION}'][generator='#{GENERATOR}']:root", :count => 1 do
@@ -222,6 +219,7 @@ class ApiControllerTest < ActionController::TestCase
         assert_select "version[minimum=#{API_VERSION}][maximum=#{API_VERSION}]", :count => 1
         assert_select "area[maximum=#{APP_CONFIG['max_request_area']}]", :count => 1
         assert_select "tracepoints[per_page=#{APP_CONFIG['tracepoints_per_page']}]", :count => 1
+        assert_select "changesets[maximum_elements=#{Changeset::MAX_ELEMENTS}]", :count => 1
       end
     end
   end