5737: Merge branch 'master' into 5737-ruby231
[arvados.git] / apps / workbench / test / unit / arvados_api_client_test.rb
1 require 'test_helper'
2
3 class ArvadosApiClientTest < ActiveSupport::TestCase
4   # We use a mock instead of making real API calls, so there's no need to reset.
5   reset_api_fixtures :after_each_test, false
6
7   test 'successful stubbed api request' do
8     stub_api_calls_with_body '{"foo":"bar","baz":0}'
9     use_token :active
10     resp = ArvadosApiClient.new_or_current.api Link, ''
11     assert_equal Hash, resp.class
12     assert_equal 'bar', resp[:foo]
13     assert_equal 0, resp[:baz]
14   end
15
16   test 'exception if server returns non-JSON' do
17     stub_api_calls_with_invalid_json
18     assert_raises ArvadosApiClient::InvalidApiResponseException do
19       use_token :active
20       resp = ArvadosApiClient.new_or_current.api Link, ''
21     end
22   end
23 end