summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2016-11-11 19:36:06 +0000
committerRémy Coutable <remy@rymai.me>2016-11-15 18:39:31 +0100
commit7082b2e1085fdd3da87a9f67fa50b2a2efb53813 (patch)
tree3751e7f6f1f5ab0decc7f7303ab3cf8fe87cfbe6
parent76b9114100795f5e6d674f0fe726d5d868f97805 (diff)
downloadgitlab-ce-7082b2e1085fdd3da87a9f67fa50b2a2efb53813.tar.gz
Merge branch '24397-load-labels-on-mr-tabs' into 'master'
Ensure labels are loaded for all "show" methods of MR Controller Closes #24397 See merge request !7416
-rw-r--r--app/controllers/projects/merge_requests_controller.rb1
-rw-r--r--changelogs/unreleased/24397-load-labels-on-mr-tabs.yml4
-rw-r--r--spec/controllers/projects/merge_requests_controller_spec.rb25
3 files changed, 30 insertions, 0 deletions
diff --git a/app/controllers/projects/merge_requests_controller.rb b/app/controllers/projects/merge_requests_controller.rb
index eff79b63cee..6e15c06c128 100644
--- a/app/controllers/projects/merge_requests_controller.rb
+++ b/app/controllers/projects/merge_requests_controller.rb
@@ -507,6 +507,7 @@ class Projects::MergeRequestsController < Projects::ApplicationController
@merge_request.close
end
+ labels
define_pipelines_vars
end
diff --git a/changelogs/unreleased/24397-load-labels-on-mr-tabs.yml b/changelogs/unreleased/24397-load-labels-on-mr-tabs.yml
new file mode 100644
index 00000000000..6bfa7fa1a49
--- /dev/null
+++ b/changelogs/unreleased/24397-load-labels-on-mr-tabs.yml
@@ -0,0 +1,4 @@
+---
+title: Fix issue causing Labels not to appear in sidebar on MR page
+merge_request: 7416
+author: Alex Sanford
diff --git a/spec/controllers/projects/merge_requests_controller_spec.rb b/spec/controllers/projects/merge_requests_controller_spec.rb
index 940d54f8686..029eff66057 100644
--- a/spec/controllers/projects/merge_requests_controller_spec.rb
+++ b/spec/controllers/projects/merge_requests_controller_spec.rb
@@ -39,6 +39,17 @@ describe Projects::MergeRequestsController do
end
end
+ shared_examples "loads labels" do |action|
+ it "loads labels into the @labels variable" do
+ get action,
+ namespace_id: project.namespace.to_param,
+ project_id: project.to_param,
+ id: merge_request.iid,
+ format: 'html'
+ expect(assigns(:labels)).not_to be_nil
+ end
+ end
+
describe "GET show" do
shared_examples "export merge as" do |format|
it "does generally work" do
@@ -51,6 +62,8 @@ describe Projects::MergeRequestsController do
expect(response).to be_success
end
+ it_behaves_like "loads labels", :show
+
it "generates it" do
expect_any_instance_of(MergeRequest).to receive(:"to_#{format}")
@@ -340,6 +353,8 @@ describe Projects::MergeRequestsController do
get :diffs, params.merge(extra_params)
end
+ it_behaves_like "loads labels", :diffs
+
context 'with default params' do
context 'as html' do
before { go(format: 'html') }
@@ -546,6 +561,8 @@ describe Projects::MergeRequestsController do
format: format
end
+ it_behaves_like "loads labels", :commits
+
context 'as html' do
it 'renders the show template' do
go
@@ -564,6 +581,14 @@ describe Projects::MergeRequestsController do
end
end
+ describe 'GET builds' do
+ it_behaves_like "loads labels", :builds
+ end
+
+ describe 'GET pipelines' do
+ it_behaves_like "loads labels", :pipelines
+ end
+
describe 'GET conflicts' do
let(:json_response) { JSON.parse(response.body) }