Added path parameter to Commits API
Signed-off-by: Rémy Coutable <remy@rymai.me>
This commit is contained in:
parent
4a0e8f59e2
commit
f73d83db76
3 changed files with 14 additions and 0 deletions
|
@ -4,6 +4,7 @@ Please view this file on the master branch, on stable branches it's out of date.
|
|||
- Adds user project membership expired event to clarify why user was removed (Callum Dryden)
|
||||
- Trim leading and trailing whitespace on project_path (Linus Thiel)
|
||||
- Prevent award emoji via notes for issues/MRs authored by user (barthc)
|
||||
- Adds an optional path parameter to the Commits API to filter commits by path (Luis HGO)
|
||||
- Fix HipChat notifications rendering (airatshigapov, eisnerd)
|
||||
- Add hover to trash icon in notes !7008 (blackst0ne)
|
||||
- Simpler arguments passed to named_route on toggle_award_url helper method
|
||||
|
|
|
@ -19,6 +19,7 @@ module API
|
|||
optional :until, type: String, desc: 'Only commits before or in this date will be returned'
|
||||
optional :page, type: Integer, default: 0, desc: 'The page for pagination'
|
||||
optional :per_page, type: Integer, default: 20, desc: 'The number of results per page'
|
||||
optional :path, type: String, desc: 'The file path'
|
||||
end
|
||||
get ":id/repository/commits" do
|
||||
# TODO remove the next line for 9.0, use DateTime type in the params block
|
||||
|
@ -28,6 +29,7 @@ module API
|
|||
offset = params[:page] * params[:per_page]
|
||||
|
||||
commits = user_project.repository.commits(ref,
|
||||
path: params[:path],
|
||||
limit: params[:per_page],
|
||||
offset: offset,
|
||||
after: params[:since],
|
||||
|
|
|
@ -72,6 +72,17 @@ describe API::API, api: true do
|
|||
expect(json_response['message']).to include "\"since\" must be a timestamp in ISO 8601 format"
|
||||
end
|
||||
end
|
||||
|
||||
context "path optional parameter" do
|
||||
it "returns project commits matching provided path parameter" do
|
||||
path = 'files/ruby/popen.rb'
|
||||
|
||||
get api("/projects/#{project.id}/repository/commits?path=#{path}", user)
|
||||
|
||||
expect(json_response.size).to eq(3)
|
||||
expect(json_response.first["id"]).to eq("570e7b2abdd848b95f2f578043fc23bd6f6fd24d")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "Create a commit with multiple files and actions" do
|
||||
|
|
Loading…
Reference in a new issue