From ce44e5a787482e4d02cee007d35ab30ab651f6f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Coutable?= <remy@rymai.me> Date: Wed, 23 Mar 2016 11:39:58 +0100 Subject: [PATCH] Add missing Dashboard::LabelsController --- .../dashboard/labels_controller.rb | 9 ++++++ spec/features/dashboard_milestones_spec.rb | 29 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 app/controllers/dashboard/labels_controller.rb create mode 100644 spec/features/dashboard_milestones_spec.rb diff --git a/app/controllers/dashboard/labels_controller.rb b/app/controllers/dashboard/labels_controller.rb new file mode 100644 index 00000000000..23a4ef21ea2 --- /dev/null +++ b/app/controllers/dashboard/labels_controller.rb @@ -0,0 +1,9 @@ +class Dashboard::LabelsController < Dashboard::ApplicationController + def index + labels = Label.where(project_id: projects).select(:title, :color).uniq(:title) + + respond_to do |format| + format.json { render json: labels } + end + end +end diff --git a/spec/features/dashboard_milestones_spec.rb b/spec/features/dashboard_milestones_spec.rb new file mode 100644 index 00000000000..f32fddbc9fa --- /dev/null +++ b/spec/features/dashboard_milestones_spec.rb @@ -0,0 +1,29 @@ +require 'spec_helper' + +feature 'Dashboard > Milestones', feature: true do + describe 'as anonymous user' do + before do + visit dashboard_milestones_path + end + + it 'is redirected to sign-in page' do + expect(current_path).to eq new_user_session_path + end + end + + describe 'as logged-in user' do + let(:user) { create(:user) } + let(:project) { create(:empty_project, namespace: user.namespace) } + let!(:milestone) { create(:milestone, project: project) } + before do + project.team << [user, :master] + login_with(user) + visit dashboard_milestones_path + end + + it 'sees milestones' do + expect(current_path).to eq dashboard_milestones_path + expect(page).to have_content(milestone.title) + end + end +end -- GitLab