summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen van Baarsen <jeroenvanbaarsen@gmail.com>2015-03-03 13:18:23 +0000
committerJeroen van Baarsen <jeroenvanbaarsen@gmail.com>2015-03-03 13:18:23 +0000
commitabc69c890513fb58c1ceae7548f4fbcc221b7c34 (patch)
treee14bda594265305b5df7fc65188f6d222f623740
parent2f4656b5c7e2a9b351237432e76a7b928a1684b1 (diff)
parente363f2e67544e210e92acc06a5af90d91c0aa684 (diff)
downloadgitlab-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--CHANGELOG1
-rw-r--r--lib/gitlab/url_builder.rb9
-rw-r--r--spec/lib/gitlab/url_builder_spec.rb8
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