diff options
Diffstat (limited to 'spec/requests/api/files_spec.rb')
-rw-r--r-- | spec/requests/api/files_spec.rb | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/spec/requests/api/files_spec.rb b/spec/requests/api/files_spec.rb index e6406174391..198e4f64bcc 100644 --- a/spec/requests/api/files_spec.rb +++ b/spec/requests/api/files_spec.rb @@ -134,7 +134,8 @@ describe API::Files do context 'when PATs are used' do it_behaves_like 'repository files' do let(:token) { create(:personal_access_token, scopes: ['read_repository'], user: user) } - let(:current_user) { { personal_access_token: token } } + let(:current_user) { user } + let(:api_user) { { personal_access_token: token } } end end @@ -153,15 +154,17 @@ describe API::Files do describe "GET /projects/:id/repository/files/:file_path" do shared_examples_for 'repository files' do + let(:api_user) { current_user } + it 'returns 400 for invalid file path' do - get api(route(rouge_file_path), current_user), params: params + get api(route(rouge_file_path), api_user), params: params expect(response).to have_gitlab_http_status(:bad_request) expect(json_response['error']).to eq(invalid_file_message) end it 'returns file attributes as json' do - get api(route(file_path), current_user), params: params + get api(route(file_path), api_user), params: params expect(response).to have_gitlab_http_status(:ok) expect(json_response['file_path']).to eq(CGI.unescape(file_path)) @@ -174,7 +177,7 @@ describe API::Files do it 'returns json when file has txt extension' do file_path = "bar%2Fbranch-test.txt" - get api(route(file_path), current_user), params: params + get api(route(file_path), api_user), params: params expect(response).to have_gitlab_http_status(:ok) expect(response.content_type).to eq('application/json') @@ -185,7 +188,7 @@ describe API::Files do file_path = "files%2Fjs%2Fcommit%2Ejs%2Ecoffee" params[:ref] = "6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9" - get api(route(file_path), current_user), params: params + get api(route(file_path), api_user), params: params expect(response).to have_gitlab_http_status(:ok) expect(json_response['file_name']).to eq('commit.js.coffee') @@ -197,7 +200,7 @@ describe API::Files do url = route(file_path) + "/raw" expect(Gitlab::Workhorse).to receive(:send_git_blob) - get api(url, current_user), params: params + get api(url, api_user), params: params expect(response).to have_gitlab_http_status(:ok) expect(headers[Gitlab::Workhorse::DETECT_HEADER]).to eq "true" @@ -206,7 +209,7 @@ describe API::Files do it 'returns blame file info' do url = route(file_path) + '/blame' - get api(url, current_user), params: params + get api(url, api_user), params: params expect(response).to have_gitlab_http_status(:ok) end @@ -214,7 +217,7 @@ describe API::Files do it 'sets inline content disposition by default' do url = route(file_path) + "/raw" - get api(url, current_user), params: params + get api(url, api_user), params: params expect(headers['Content-Disposition']).to eq(%q(inline; filename="popen.rb"; filename*=UTF-8''popen.rb)) end @@ -229,7 +232,7 @@ describe API::Files do let(:params) { { ref: 'master' } } it_behaves_like '404 response' do - let(:request) { get api(route('app%2Fmodels%2Fapplication%2Erb'), current_user), params: params } + let(:request) { get api(route('app%2Fmodels%2Fapplication%2Erb'), api_user), params: params } let(:message) { '404 File Not Found' } end end @@ -238,7 +241,7 @@ describe API::Files do include_context 'disabled repository' it_behaves_like '403 response' do - let(:request) { get api(route(file_path), current_user), params: params } + let(:request) { get api(route(file_path), api_user), params: params } end end end @@ -253,7 +256,8 @@ describe API::Files do context 'when PATs are used' do it_behaves_like 'repository files' do let(:token) { create(:personal_access_token, scopes: ['read_repository'], user: user) } - let(:current_user) { { personal_access_token: token } } + let(:current_user) { user } + let(:api_user) { { personal_access_token: token } } end end |