summaryrefslogtreecommitdiff
path: root/spec/services
diff options
context:
space:
mode:
authorLin Jen-Shin <godfat@godfat.org>2017-04-06 19:48:40 +0800
committerLin Jen-Shin <godfat@godfat.org>2017-04-06 19:48:40 +0800
commit98a4aca6b5ce503543b0e325212265a365e64d75 (patch)
tree0c639fc91c9bebc06eecd1e5f0a2764577b97d28 /spec/services
parent06b4ea243fef27fa79a201148f07c25df375f57d (diff)
parentd062af91ca10bb0c48136ad9b9204b02d41fdf8c (diff)
downloadgitlab-ce-98a4aca6b5ce503543b0e325212265a365e64d75.tar.gz
Merge remote-tracking branch 'upstream/master' into 8998_skip_pending_commits_if_not_head
* upstream/master: Show CI status as Favicon on Pipelines, Job and MR pages STL file viewer Wait for the PDF to be loaded before doing anything remove unnecessary lease as cron job Search for opened MRs - include reopened MRs ProjectsFinder should handle more options Clearly show who triggered the pipeline in email Make it possible to preview pipeline success/failed emails Add remove_concurrent_index to database helper fix project authorizations migration issue attempt to fix migration Revert schema.rb attempt to fix db failure Periodically mark projects that are stuck in importing as failed Fix html structure to prevent tooltip from not hidding Enable creation of deploy keys with write access via the API
Diffstat (limited to 'spec/services')
-rw-r--r--spec/services/merge_requests/refresh_service_spec.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/services/merge_requests/refresh_service_spec.rb b/spec/services/merge_requests/refresh_service_spec.rb
index c22d145ca5d..03215a4624a 100644
--- a/spec/services/merge_requests/refresh_service_spec.rb
+++ b/spec/services/merge_requests/refresh_service_spec.rb
@@ -49,6 +49,7 @@ describe MergeRequests::RefreshService, services: true do
context 'push to origin repo source branch' do
let(:refresh_service) { service.new(@project, @user) }
+
before do
allow(refresh_service).to receive(:execute_hooks)
refresh_service.execute(@oldrev, @newrev, 'refs/heads/master')
@@ -70,6 +71,32 @@ describe MergeRequests::RefreshService, services: true do
end
end
+ context 'push to origin repo source branch when an MR was reopened' do
+ let(:refresh_service) { service.new(@project, @user) }
+
+ before do
+ @merge_request.update(state: :reopened)
+
+ allow(refresh_service).to receive(:execute_hooks)
+ refresh_service.execute(@oldrev, @newrev, 'refs/heads/master')
+ reload_mrs
+ end
+
+ it 'executes hooks with update action' do
+ expect(refresh_service).to have_received(:execute_hooks).
+ with(@merge_request, 'update', @oldrev)
+
+ expect(@merge_request.notes).not_to be_empty
+ expect(@merge_request).to be_open
+ expect(@merge_request.merge_when_pipeline_succeeds).to be_falsey
+ expect(@merge_request.diff_head_sha).to eq(@newrev)
+ expect(@fork_merge_request).to be_open
+ expect(@fork_merge_request.notes).to be_empty
+ expect(@build_failed_todo).to be_done
+ expect(@fork_build_failed_todo).to be_done
+ end
+ end
+
context 'push to origin repo target branch' do
before do
service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')