diff options
Diffstat (limited to 'spec/controllers/groups/settings/ci_cd_controller_spec.rb')
-rw-r--r-- | spec/controllers/groups/settings/ci_cd_controller_spec.rb | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/spec/controllers/groups/settings/ci_cd_controller_spec.rb b/spec/controllers/groups/settings/ci_cd_controller_spec.rb index 55c19de4aa1..f11bb66caab 100644 --- a/spec/controllers/groups/settings/ci_cd_controller_spec.rb +++ b/spec/controllers/groups/settings/ci_cd_controller_spec.rb @@ -5,8 +5,15 @@ require 'spec_helper' RSpec.describe Groups::Settings::CiCdController do include ExternalAuthorizationServiceHelpers - let(:group) { create(:group) } - let(:user) { create(:user) } + let_it_be(:group) { create(:group) } + let_it_be(:sub_group) { create(:group, parent: group) } + let_it_be(:user) { create(:user) } + let_it_be(:project) { create(:project, group: group) } + let_it_be(:project_2) { create(:project, group: sub_group) } + let_it_be(:runner_group) { create(:ci_runner, :group, groups: [group]) } + let_it_be(:runner_project_1) { create(:ci_runner, :project, projects: [project])} + let_it_be(:runner_project_2) { create(:ci_runner, :project, projects: [project_2])} + let_it_be(:runner_project_3) { create(:ci_runner, :project, projects: [project, project_2])} before do sign_in(user) @@ -18,11 +25,12 @@ RSpec.describe Groups::Settings::CiCdController do group.add_owner(user) end - it 'renders show with 200 status code' do + it 'renders show with 200 status code and correct runners' do get :show, params: { group_id: group } expect(response).to have_gitlab_http_status(:ok) expect(response).to render_template(:show) + expect(assigns(:group_runners)).to match_array([runner_group, runner_project_1, runner_project_2, runner_project_3]) end end @@ -35,6 +43,7 @@ RSpec.describe Groups::Settings::CiCdController do get :show, params: { group_id: group } expect(response).to have_gitlab_http_status(:not_found) + expect(assigns(:group_runners)).to be_nil end end |