diff options
author | Jeroen van Baarsen <jeroenvanbaarsen@gmail.com> | 2015-03-03 13:18:23 +0000 |
---|---|---|
committer | Jeroen van Baarsen <jeroenvanbaarsen@gmail.com> | 2015-03-03 13:18:23 +0000 |
commit | abc69c890513fb58c1ceae7548f4fbcc221b7c34 (patch) | |
tree | e14bda594265305b5df7fc65188f6d222f623740 | |
parent | 2f4656b5c7e2a9b351237432e76a7b928a1684b1 (diff) | |
parent | e363f2e67544e210e92acc06a5af90d91c0aa684 (diff) | |
download | gitlab-ce-abc69c890513fb58c1ceae7548f4fbcc221b7c34.tar.gz |
Merge branch 'fix-merge-request-url-builder' into 'master'
Fix merge request URL passed to Webhooks
If you look at the data structure passed to Webhooks, you will see:
`"url"=>nil`
I don't think any of the Webhooks or services are using this yet, so right now nothing so far depends upon this value being correct.
See merge request !352
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | lib/gitlab/url_builder.rb | 9 | ||||
-rw-r--r-- | spec/lib/gitlab/url_builder_spec.rb | 8 |
3 files changed, 18 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG index 6a28772097e..6aa30c1b9b2 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ Please view this file on the master branch, on stable branches it's out of date. v 7.9.0 (unreleased) + - Fix merge request URL passed to Webhooks. (Stan Hu) - Move labels/milestones tabs to sidebar - Upgrade Rails gem to version 4.1.9. - Improve error messages for file edit failures diff --git a/lib/gitlab/url_builder.rb b/lib/gitlab/url_builder.rb index e7153cc3225..7ab3f090a89 100644 --- a/lib/gitlab/url_builder.rb +++ b/lib/gitlab/url_builder.rb @@ -10,6 +10,8 @@ module Gitlab case @type when :issue issue_url(id) + when :merge_request + merge_request_url(id) end end @@ -22,5 +24,12 @@ module Gitlab project_id: issue.project, host: Gitlab.config.gitlab['url']) end + + def merge_request_url(id) + merge_request = MergeRequest.find(id) + project_merge_request_url(id: merge_request.id, + project_id: merge_request.project, + host: Gitlab.config.gitlab['url']) + end end end diff --git a/spec/lib/gitlab/url_builder_spec.rb b/spec/lib/gitlab/url_builder_spec.rb index 716430340b6..518239fab6d 100644 --- a/spec/lib/gitlab/url_builder_spec.rb +++ b/spec/lib/gitlab/url_builder_spec.rb @@ -8,4 +8,12 @@ describe Gitlab::UrlBuilder do expect(url).to eq "#{Settings.gitlab['url']}/#{issue.project.path_with_namespace}/issues/#{issue.iid}" end end + + describe 'When asking for an merge request' do + it 'returns the merge request url' do + merge_request = create(:merge_request) + url = Gitlab::UrlBuilder.new(:merge_request).build(merge_request.id) + expect(url).to eq "#{Settings.gitlab['url']}/#{merge_request.project.to_param}/merge_requests/#{merge_request.id}" + end + end end |