X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/4e98958d0eed70a8287d3e72d5256de483dbe721..ebbe2d754223e788ef7c532fb5d1613a51f754a6:/apps/workbench/test/test_helper.rb diff --git a/apps/workbench/test/test_helper.rb b/apps/workbench/test/test_helper.rb index 335fcd0ee5..fdde55d41d 100644 --- a/apps/workbench/test/test_helper.rb +++ b/apps/workbench/test/test_helper.rb @@ -32,8 +32,16 @@ class ActiveSupport::TestCase # in integration tests -- they do not yet inherit this setting fixtures :all def use_token token_name + was = Thread.current[:arvados_api_token] auth = api_fixture('api_client_authorizations')[token_name.to_s] Thread.current[:arvados_api_token] = auth['api_token'] + if block_given? + begin + yield + ensure + Thread.current[:arvados_api_token] = was + end + end end setup do @@ -87,27 +95,24 @@ module ApiFixtureLoader end module ApiMockHelpers - def self.included base - base.class_eval do - def stub_api_calls_with_body body, status_code=200 - resp = mock - stubbed_client = ArvadosApiClient.new - stubbed_client.instance_eval do - resp.responds_like_instance_of HTTP::Message - resp.stubs(:content).returns body - resp.stubs(:status_code).returns status_code - @api_client = HTTPClient.new - @api_client.stubs(:post).returns resp - end - ArvadosApiClient.stubs(:new_or_current).returns(stubbed_client) - end - - def stub_api_calls_with_invalid_json - stub_api_calls_with_body ']"omg,bogus"[' - end + def stub_api_calls_with_body body, status_code=200 + resp = mock + stubbed_client = ArvadosApiClient.new + stubbed_client.instance_eval do + resp.responds_like_instance_of HTTP::Message + resp.stubs(:content).returns body + resp.stubs(:status_code).returns status_code + @api_client = HTTPClient.new + @api_client.stubs(:post).returns resp end + ArvadosApiClient.stubs(:new_or_current).returns(stubbed_client) + end + + def stub_api_calls_with_invalid_json + stub_api_calls_with_body ']"omg,bogus"[' end end + class ActiveSupport::TestCase include ApiMockHelpers end