diff --git a/lib/travis/api/app/endpoint/repos.rb b/lib/travis/api/app/endpoint/repos.rb index 1e52b7d0..14203d15 100644 --- a/lib/travis/api/app/endpoint/repos.rb +++ b/lib/travis/api/app/endpoint/repos.rb @@ -97,8 +97,9 @@ class Travis::Api::App respond_with service(:find_branches, params), type: :branches, version: :v2 end - # Gets lastest build on a branch branches - get '/:repository_id/branches/:branch' do + # Gets latest build on a branch + get '/:repository_id/branches/*' do + params[:branch] = params[:splat] respond_with service(:find_branch, params), type: :branch, version: :v2 end @@ -169,8 +170,9 @@ class Travis::Api::App respond_with service(:find_branches, params), type: :branches, version: :v2 end - # Gets lastest build on a branch branches - get '/:owner_name/:name/branches/:branch' do + # Gets latest build on a branch + get '/:owner_name/:name/branches/*' do + params[:branch] = params[:splat] respond_with service(:find_branch, params), type: :branch, version: :v2 end diff --git a/spec/integration/v2/repositories_spec.rb b/spec/integration/v2/repositories_spec.rb index 86792000..dfa86220 100644 --- a/spec/integration/v2/repositories_spec.rb +++ b/spec/integration/v2/repositories_spec.rb @@ -151,6 +151,13 @@ describe 'Repos' do body['branch']['id'].should == mybuild.id end + it 'GET /repos/svenfuchs/minimal/branches/my/branch' do + mybuild = Factory(:build, repository: repo, state: :started, commit: Factory(:commit, branch: 'my/branch'), request: Factory(:request, event_type: 'push')) + response = get "/repos/svenfuchs/minimal/branches/my/branch", {}, headers + body = JSON.parse(response.body) + body['branch']['id'].should == mybuild.id + end + describe 'GET /repos/svenfuchs/minimal.png?branch=foo,bar' do let(:on_foo) { Factory(:commit, branch: 'foo') } let(:on_bar) { Factory(:commit, branch: 'bar') }