summaryrefslogtreecommitdiff
path: root/spec/models/project_spec.rb
diff options
context:
space:
mode:
authorAlexis Reigel <alexis.reigel.ext@siemens.com>2017-10-05 13:53:18 +0200
committerAlexis Reigel <alexis.reigel.ext@siemens.com>2018-04-23 09:21:49 +0200
commita5f5a27df5d3055612fc8c2686ef3b9ab20bd85e (patch)
tree309bd432d4d520bdc4fe3b4fab1b0f2037b0c308 /spec/models/project_spec.rb
parent743c32270e2913a19999bd32d6208e80dd62dc2a (diff)
downloadgitlab-ce-a5f5a27df5d3055612fc8c2686ef3b9ab20bd85e.tar.gz
include group runners in Project#any_runners?
Diffstat (limited to 'spec/models/project_spec.rb')
-rw-r--r--spec/models/project_spec.rb87
1 files changed, 61 insertions, 26 deletions
diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb
index 2675c2f52c1..9657e5011b1 100644
--- a/spec/models/project_spec.rb
+++ b/spec/models/project_spec.rb
@@ -1139,44 +1139,79 @@ describe Project do
end
describe '#any_runners' do
- let(:project) { create(:project, shared_runners_enabled: shared_runners_enabled) }
- let(:specific_runner) { create(:ci_runner) }
- let(:shared_runner) { create(:ci_runner, :shared) }
+ context 'shared runners' do
+ let(:project) { create :project, shared_runners_enabled: shared_runners_enabled }
+ let(:specific_runner) { create :ci_runner }
+ let(:shared_runner) { create :ci_runner, :shared }
- context 'for shared runners disabled' do
- let(:shared_runners_enabled) { false }
+ context 'for shared runners disabled' do
+ let(:shared_runners_enabled) { false }
- it 'has no runners available' do
- expect(project.any_runners?).to be_falsey
- end
+ it 'has no runners available' do
+ expect(project.any_runners?).to be_falsey
+ end
- it 'has a specific runner' do
- project.runners << specific_runner
- expect(project.any_runners?).to be_truthy
- end
+ it 'has a specific runner' do
+ project.runners << specific_runner
+ expect(project.any_runners?).to be_truthy
+ end
+
+ it 'has a shared runner, but they are prohibited to use' do
+ shared_runner
+ expect(project.any_runners?).to be_falsey
+ end
- it 'has a shared runner, but they are prohibited to use' do
- shared_runner
- expect(project.any_runners?).to be_falsey
+ it 'checks the presence of specific runner' do
+ project.runners << specific_runner
+ expect(project.any_runners? { |runner| runner == specific_runner }).to be_truthy
+ end
end
- it 'checks the presence of specific runner' do
- project.runners << specific_runner
- expect(project.any_runners? { |runner| runner == specific_runner }).to be_truthy
+ context 'for shared runners enabled' do
+ let(:shared_runners_enabled) { true }
+
+ it 'has a shared runner' do
+ shared_runner
+ expect(project.any_runners?).to be_truthy
+ end
+
+ it 'checks the presence of shared runner' do
+ shared_runner
+ expect(project.any_runners? { |runner| runner == shared_runner }).to be_truthy
+ end
end
end
- context 'for shared runners enabled' do
- let(:shared_runners_enabled) { true }
+ context 'group runners' do
+ let(:project) { create :project, group_runners_enabled: group_runners_enabled }
+ let(:group) { create :group, projects: [project] }
+ let(:group_runner) { create :ci_runner, groups: [group] }
+
+ context 'for group runners disabled' do
+ let(:group_runners_enabled) { false }
- it 'has a shared runner' do
- shared_runner
- expect(project.any_runners?).to be_truthy
+ it 'has no runners available' do
+ expect(project.any_runners?).to be_falsey
+ end
+
+ it 'has a group runner, but they are prohibited to use' do
+ group_runner
+ expect(project.any_runners?).to be_falsey
+ end
end
- it 'checks the presence of shared runner' do
- shared_runner
- expect(project.any_runners? { |runner| runner == shared_runner }).to be_truthy
+ context 'for group runners enabled' do
+ let(:group_runners_enabled) { true }
+
+ it 'has a group runner' do
+ group_runner
+ expect(project.any_runners?).to be_truthy
+ end
+
+ it 'checks the presence of group runner' do
+ group_runner
+ expect(project.any_runners? { |runner| runner == group_runner }).to be_truthy
+ end
end
end
end