]> git.openstreetmap.org Git - rails.git/blobdiff - test/controllers/swf_controller_test.rb
Fix tests that referred to node lat and lons
[rails.git] / test / controllers / swf_controller_test.rb
index 6873d86e71d53a084f1c5035bd6558a30cc3eb43..e293bc41b2185b34dc7314d641eba65db1827647 100644 (file)
@@ -1,6 +1,8 @@
 require "test_helper"
 
 class SwfControllerTest < ActionController::TestCase
+  api_fixtures
+
   ##
   # test all routes which lead to this controller
   def test_routes
@@ -13,9 +15,32 @@ class SwfControllerTest < ActionController::TestCase
   ##
   # basic test that trackpoints at least returns some sort of flash movie
   def test_trackpoints
-    get :trackpoints, :xmin => 51, :xmax => 52, :ymin => -1, :ymax => 1, :baselong => 0, :basey => 0, :masterscale => 1
+    user = create(:user)
+    other_user = create(:user)
+    create(:trace, :visibility => "trackable", :latitude => 51.51, :longitude => -0.14, :user => user) do |trace|
+      create(:tracepoint, :trace => trace, :trackid => 1, :latitude => (51.510 * GeoRecord::SCALE).to_i, :longitude => (-0.140 * GeoRecord::SCALE).to_i)
+      create(:tracepoint, :trace => trace, :trackid => 2, :latitude => (51.511 * GeoRecord::SCALE).to_i, :longitude => (-0.141 * GeoRecord::SCALE).to_i)
+    end
+    create(:trace, :visibility => "identifiable", :latitude => 51.512, :longitude => 0.142) do |trace|
+      create(:tracepoint, :trace => trace, :latitude => (51.512 * GeoRecord::SCALE).to_i, :longitude => (0.142 * GeoRecord::SCALE).to_i)
+    end
+
+    get :trackpoints, :xmin => -1, :xmax => 1, :ymin => 51, :ymax => 52, :baselong => 0, :basey => 0, :masterscale => 1
+    assert_response :success
+    assert_equal "application/x-shockwave-flash", response.content_type
+    assert_match /^FWS/, response.body
+    assert_equal 80, response.body.length
+
+    get :trackpoints, :xmin => -1, :xmax => 1, :ymin => 51, :ymax => 52, :baselong => 0, :basey => 0, :masterscale => 1, :token => other_user.tokens.create.token
+    assert_response :success
+    assert_equal "application/x-shockwave-flash", response.content_type
+    assert_match /^FWS/, response.body
+    assert_equal 67, response.body.length
+
+    get :trackpoints, :xmin => -1, :xmax => 1, :ymin => 51, :ymax => 52, :baselong => 0, :basey => 0, :masterscale => 1, :token => user.tokens.create.token
     assert_response :success
     assert_equal "application/x-shockwave-flash", response.content_type
     assert_match /^FWS/, response.body
+    assert_equal 74, response.body.length
   end
 end