X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/31d8469fa1adfa0c3a07a23725f26b26f2291df5..b96d5caa0056472fe67b82bd5305448d85c7d0cd:/services/api/test/functional/application_controller_test.rb diff --git a/services/api/test/functional/application_controller_test.rb b/services/api/test/functional/application_controller_test.rb index 4f112dbae5..2cfa054448 100644 --- a/services/api/test/functional/application_controller_test.rb +++ b/services/api/test/functional/application_controller_test.rb @@ -25,13 +25,15 @@ class ApplicationControllerTest < ActionController::TestCase assert_operator(token_time, :>=, @start_stamp, "error token too old") assert_operator(token_time, :<=, now_timestamp, "error token too new") json_response['errors'].each do |err| - assert_match(/req-[a-z0-9]{20}/, err) + assert_match(/req-[a-z0-9]{20}/, err, "X-Request-Id value missing on error message") end end def check_404(errmsg="Path not found") assert_response 404 - assert_equal([errmsg], json_response['errors']) + json_response['errors'].each do |err| + assert(err.include?(errmsg), "error message '#{err}' expected to include '#{errmsg}'") + end check_error_token end @@ -98,7 +100,7 @@ class ApplicationControllerTest < ActionController::TestCase @controller = Arvados::V1::GroupsController.new authorize_with :active post :create, params: { - group: {}, + group: {group_class: "project"}, ensure_unique_name: boolparam } assert_response :success @@ -111,7 +113,8 @@ class ApplicationControllerTest < ActionController::TestCase post :create, params: { group: { name: groups(:aproject).name, - owner_uuid: groups(:aproject).owner_uuid + owner_uuid: groups(:aproject).owner_uuid, + group_class: "project" }, ensure_unique_name: boolparam } @@ -119,4 +122,16 @@ class ApplicationControllerTest < ActionController::TestCase end end end + + test "exceptions with backtraces get logged at exception_backtrace key" do + Group.stubs(:new).raises(Exception, 'Whoops') + Rails.logger.expects(:info).with(any_parameters) do |param| + param.include?('Whoops') and param.include?('"exception_backtrace":') + end + @controller = Arvados::V1::GroupsController.new + authorize_with :active + post :create, params: { + group: {}, + } + end end