Treeat user as logged in after a password reset
[rails.git] / test / controllers / amf_controller_test.rb
index 55445683771a7cae770a0242a21b3ea67833ab2f..d388114dd99626db7f0f54ff3fa8e07f086e8880 100644 (file)
@@ -306,7 +306,7 @@ class AmfControllerTest < ActionController::TestCase
     # NOTE: looks from the API changes that this now expects a timestamp
     # instead of a version number...
     # try to get version 1
-    v1 = ways(:way_with_versions_v1)
+    v1 = ways(:way_with_versions_v2)
     { latest.id => "",
       v1.way_id => v1.timestamp.strftime("%d %b %Y, %H:%M:%S")
     }.each do |id, t|
@@ -346,7 +346,7 @@ class AmfControllerTest < ActionController::TestCase
   end
 
   def test_getway_old_nonexistent
-    # try to get the last version+10 (shoudn't exist)
+    # try to get the last version-10 (shoudn't exist)
     v1 = ways(:way_with_versions_v1)
     # try to get last visible version of non-existent way
     # try to get specific version of non-existent way
@@ -366,6 +366,23 @@ class AmfControllerTest < ActionController::TestCase
     end
   end
 
+  def test_getway_old_invisible
+    v1 = ways(:invisible_way)
+    # try to get deleted version
+    [[v1.way_id, (v1.timestamp + 10).strftime("%d %b %Y, %H:%M:%S")]
+    ].each do |id, t|
+      amf_content "getway_old", "/1", [id, t]
+      post :amf_read
+      assert_response :success
+      amf_parse_response
+      returned_way = amf_result("/1")
+      assert_equal -1, returned_way[0]
+      assert returned_way[3].nil?
+      assert returned_way[4].nil?
+      assert returned_way[5].nil?
+    end
+  end
+
   def test_getway_history
     latest = current_ways(:way_with_versions)
     oldest = ways(:way_with_versions_v1)
@@ -1341,24 +1358,24 @@ class AmfControllerTest < ActionController::TestCase
   def amf_parse_response
     req = StringIO.new(@response.body)
 
-    req.read(2)   # version
+    req.read(2) # version
 
     # parse through any headers
-    headers = AMF.getint(req)          # Read number of headers
-    headers.times do                   # Read each header
-      AMF.getstring(req)               #  |
-      req.getc                         #  | skip boolean
-      AMF.getvalue(req)                        #  |
+    headers = AMF.getint(req)        # Read number of headers
+    headers.times do                 # Read each header
+      AMF.getstring(req)             #  |
+      req.getc                       #  | skip boolean
+      AMF.getvalue(req)              #  |
     end
 
     # parse through responses
     results = {}
-    bodies = AMF.getint(req)           # Read number of bodies
-    bodies.times do                    # Read each body
-      message = AMF.getstring(req)     #  | get message name
-      AMF.getstring(req)               #  | get index in response sequence
-      AMF.getlong(req)                 #  | get total size in bytes
-      args = AMF.getvalue(req)         #  | get response (probably an array)
+    bodies = AMF.getint(req)         # Read number of bodies
+    bodies.times do                  # Read each body
+      message = AMF.getstring(req)   #  | get message name
+      AMF.getstring(req)             #  | get index in response sequence
+      AMF.getlong(req)               #  | get total size in bytes
+      args = AMF.getvalue(req)       #  | get response (probably an array)
       results[message] = args
     end
     @amf_result = results