]> git.openstreetmap.org Git - rails.git/blobdiff - test/controllers/api/capabilities_controller_test.rb
Rename api controller test files
[rails.git] / test / controllers / api / capabilities_controller_test.rb
diff --git a/test/controllers/api/capabilities_controller_test.rb b/test/controllers/api/capabilities_controller_test.rb
new file mode 100644 (file)
index 0000000..127201f
--- /dev/null
@@ -0,0 +1,35 @@
+require "test_helper"
+
+module Api
+  class CapabilitiesControllerTest < ActionController::TestCase
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/api/capabilities", :method => :get },
+        { :controller => "api/capabilities", :action => "show" }
+      )
+      assert_recognizes(
+        { :controller => "api/capabilities", :action => "show" },
+        { :path => "/api/0.6/capabilities", :method => :get }
+      )
+    end
+
+    def test_capabilities
+      get :show
+      assert_response :success
+      assert_select "osm[version='#{API_VERSION}'][generator='#{GENERATOR}']", :count => 1 do
+        assert_select "api", :count => 1 do
+          assert_select "version[minimum='#{API_VERSION}'][maximum='#{API_VERSION}']", :count => 1
+          assert_select "area[maximum='#{MAX_REQUEST_AREA}']", :count => 1
+          assert_select "note_area[maximum='#{MAX_NOTE_REQUEST_AREA}']", :count => 1
+          assert_select "tracepoints[per_page='#{TRACEPOINTS_PER_PAGE}']", :count => 1
+          assert_select "changesets[maximum_elements='#{Changeset::MAX_ELEMENTS}']", :count => 1
+          assert_select "status[database='online']", :count => 1
+          assert_select "status[api='online']", :count => 1
+          assert_select "status[gpx='online']", :count => 1
+        end
+      end
+    end
+  end
+end