diff options
| author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2018-01-23 13:04:58 +0100 |
|---|---|---|
| committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2018-01-23 13:04:58 +0100 |
| commit | 41498864a083663fa29131f8af74c69e82213055 (patch) | |
| tree | b838012a9480b20acb9b80ba9a2bd5e649d117e4 /qa/spec/runtime/api_request_spec.rb | |
| parent | d327277c39df1537b41073912d9b4e9f765d8da5 (diff) | |
| parent | 4dc42845f2ceadcff76a99908220e61610c5b608 (diff) | |
| download | gitlab-ce-41498864a083663fa29131f8af74c69e82213055.tar.gz | |
Merge branch 'master' into qa/gb/ci-cd-qa-pipelines
* master: (69 commits)
Conflicts:
qa/qa.rb
Diffstat (limited to 'qa/spec/runtime/api_request_spec.rb')
| -rw-r--r-- | qa/spec/runtime/api_request_spec.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/qa/spec/runtime/api_request_spec.rb b/qa/spec/runtime/api_request_spec.rb new file mode 100644 index 00000000000..9a1ed8a7a46 --- /dev/null +++ b/qa/spec/runtime/api_request_spec.rb @@ -0,0 +1,42 @@ +describe QA::Runtime::API::Request do + include Support::StubENV + + before do + stub_env('PERSONAL_ACCESS_TOKEN', 'a_token') + end + + let(:client) { QA::Runtime::API::Client.new('http://example.com') } + let(:request) { described_class.new(client, '/users') } + + describe '#url' do + it 'returns the full api request url' do + expect(request.url).to eq 'http://example.com/api/v4/users?private_token=a_token' + end + end + + describe '#request_path' do + it 'prepends the api path' do + expect(request.request_path('/users')).to eq '/api/v4/users' + end + + it 'adds the personal access token' do + expect(request.request_path('/users', personal_access_token: 'token')) + .to eq '/api/v4/users?private_token=token' + end + + it 'adds the oauth access token' do + expect(request.request_path('/users', oauth_access_token: 'otoken')) + .to eq '/api/v4/users?access_token=otoken' + end + + it 'respects query parameters' do + expect(request.request_path('/users?page=1')).to eq '/api/v4/users?page=1' + expect(request.request_path('/users?page=1', personal_access_token: 'token')) + .to eq '/api/v4/users?page=1&private_token=token' + end + + it 'uses a different api version' do + expect(request.request_path('/users', version: 'v3')).to eq '/api/v3/users' + end + end +end |
