Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorDylan Griffith <dyl.griffith@gmail.com>2018-05-01 12:44:35 +0300
committerDylan Griffith <dyl.griffith@gmail.com>2018-05-01 12:44:35 +0300
commit0e5c1a89f0b6ecf88fc340194d292fccbde99782 (patch)
tree62db4af97682b236746716718322dd81f1f23924 /spec
parentb7b823246602d6821f1773274ee6017c9f46e93f (diff)
Fix spec/features/admin/admin_runners_spec.rb + test style improvements
Diffstat (limited to 'spec')
-rw-r--r--spec/controllers/projects/settings/ci_cd_controller_spec.rb20
-rw-r--r--spec/features/admin/admin_runners_spec.rb6
-rw-r--r--spec/models/ci/runner_spec.rb8
3 files changed, 20 insertions, 14 deletions
diff --git a/spec/controllers/projects/settings/ci_cd_controller_spec.rb b/spec/controllers/projects/settings/ci_cd_controller_spec.rb
index 1cf395b0328..a91c868cbaf 100644
--- a/spec/controllers/projects/settings/ci_cd_controller_spec.rb
+++ b/spec/controllers/projects/settings/ci_cd_controller_spec.rb
@@ -18,15 +18,21 @@ describe Projects::Settings::CiCdController do
expect(response).to render_template(:show)
end
- it 'sets assignable project runners' do
- group = create(:group, runners: [create(:ci_runner)], parent: create(:group))
- group.add_master(user)
- project_runner = create(:ci_runner, projects: [create(:project, group: group)])
- create(:ci_runner, :shared)
+ context 'with group runners' do
+ let(:group_runner) { create(:ci_runner) }
+ let(:parent_group) { create(:group) }
+ let(:group) { create(:group, runners: [group_runner], parent: parent_group) }
+ let(:other_project) { create(:project, group: group) }
+ let!(:project_runner) { create(:ci_runner, projects: [other_project]) }
+ let!(:shared_runner) { create(:ci_runner, :shared) }
- get :show, namespace_id: project.namespace, project_id: project
+ it 'sets assignable project runners only' do
+ group.add_master(user)
+
+ get :show, namespace_id: project.namespace, project_id: project
- expect(assigns(:assignable_runners)).to eq [project_runner]
+ expect(assigns(:assignable_runners)).to eq [project_runner]
+ end
end
end
diff --git a/spec/features/admin/admin_runners_spec.rb b/spec/features/admin/admin_runners_spec.rb
index b0aa2e8b588..3465ccfc423 100644
--- a/spec/features/admin/admin_runners_spec.rb
+++ b/spec/features/admin/admin_runners_spec.rb
@@ -61,10 +61,10 @@ describe "Admin Runners" do
end
context 'group runner' do
- it 'shows the label and does not show the project count' do
- group = create :group
- runner = create :ci_runner, groups: [group]
+ let(:group) { create(:group) }
+ let!(:runner) { create(:ci_runner, groups: [group], runner_type: :group_type) }
+ it 'shows the label and does not show the project count' do
visit admin_runners_path
within "#runner_#{runner.id}" do
diff --git a/spec/models/ci/runner_spec.rb b/spec/models/ci/runner_spec.rb
index fb9dcce9a7c..fa540f8d4fd 100644
--- a/spec/models/ci/runner_spec.rb
+++ b/spec/models/ci/runner_spec.rb
@@ -21,8 +21,9 @@ describe Ci::Runner do
end
context 'either_projects_or_group' do
+ let(:group) { create(:group) }
+
it 'disallows assigning to a group if already assigned to a group' do
- group = create(:group)
runner = create(:ci_runner, groups: [group])
runner.groups << build(:group)
@@ -42,7 +43,6 @@ describe Ci::Runner do
end
it 'disallows assigning to a project if already assigned to a group' do
- group = create(:group)
runner = create(:ci_runner, groups: [group])
runner.projects << build(:project)
@@ -189,9 +189,9 @@ describe Ci::Runner do
# globally shared
shared_runner = create :ci_runner, :shared
- expect(described_class.owned_or_shared(project.id)).to match_array [
+ expect(described_class.owned_or_shared(project.id)).to contain_exactly(
group_runner, project_runner, shared_runner
- ]
+ )
end
end