Merge branch 'issue_31790' into 'master'
Fix API responses when dealing with txt files Closes #31790 See merge request !13474
This commit is contained in:
commit
05151f7699
3 changed files with 17 additions and 0 deletions
4
changelogs/unreleased/issue_31790.yml
Normal file
4
changelogs/unreleased/issue_31790.yml
Normal file
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
title: Fix API responses when dealing with txt files
|
||||
merge_request:
|
||||
author:
|
|
@ -1,5 +1,8 @@
|
|||
module API
|
||||
class Files < Grape::API
|
||||
# Prevents returning plain/text responses for files with .txt extension
|
||||
after_validation { content_type "application/json" }
|
||||
|
||||
helpers do
|
||||
def commit_params(attrs)
|
||||
{
|
||||
|
|
|
@ -33,6 +33,15 @@ describe API::Files do
|
|||
expect(Base64.decode64(json_response['content']).lines.first).to eq("require 'fileutils'\n")
|
||||
end
|
||||
|
||||
it 'returns json when file has txt extension' do
|
||||
file_path = "bar%2Fbranch-test.txt"
|
||||
|
||||
get api(route(file_path), current_user), params
|
||||
|
||||
expect(response).to have_http_status(200)
|
||||
expect(response.content_type).to eq('application/json')
|
||||
end
|
||||
|
||||
it 'returns file by commit sha' do
|
||||
# This file is deleted on HEAD
|
||||
file_path = "files%2Fjs%2Fcommit%2Ejs%2Ecoffee"
|
||||
|
@ -220,6 +229,7 @@ describe API::Files do
|
|||
post api(route("new_file_with_author%2Etxt"), user), valid_params
|
||||
|
||||
expect(response).to have_http_status(201)
|
||||
expect(response.content_type).to eq('application/json')
|
||||
last_commit = project.repository.commit.raw
|
||||
expect(last_commit.author_email).to eq(author_email)
|
||||
expect(last_commit.author_name).to eq(author_name)
|
||||
|
|
Loading…
Reference in a new issue