15318: Adds X-Request-Id value to every error response. Fixes test.
authorLucas Di Pentima <ldipentima@veritasgenetics.com>
Tue, 9 Jul 2019 19:15:32 +0000 (16:15 -0300)
committerLucas Di Pentima <ldipentima@veritasgenetics.com>
Tue, 9 Jul 2019 19:15:32 +0000 (16:15 -0300)
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima@veritasgenetics.com>

services/api/app/controllers/application_controller.rb
services/api/test/functional/application_controller_test.rb

index e07a5aca79b5a310d320c6901df9c5a82326465a..d5bc3f35d7e04fc47f9795f8a3643f4aef8bcf57 100644 (file)
@@ -183,6 +183,9 @@ class ApplicationController < ActionController::Base
       err = {}
     end
     err[:errors] ||= args
+    err[:errors].map! do |err|
+      err += " (" + Thread.current[:request_id] + ")"
+    end
     err[:error_token] = [Time.now.utc.to_i, "%08x" % rand(16 ** 8)].join("+")
     status = err.delete(:status) || 422
     logger.error "Error #{err[:error_token]}: #{status}"
index 4f112dbae5c9458d81ff18f46a86e214053cc15a..d382c1c6a6bff71703c31fd87b7e30ec41b5925d 100644 (file)
@@ -31,7 +31,7 @@ class ApplicationControllerTest < ActionController::TestCase
 
   def check_404(errmsg="Path not found")
     assert_response 404
-    assert_equal([errmsg], json_response['errors'])
+    assert_includes(json_response['errors'].first, errmsg)
     check_error_token
   end