diff options
Diffstat (limited to 'spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb')
-rw-r--r-- | spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb | 58 |
1 files changed, 29 insertions, 29 deletions
diff --git a/spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb b/spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb index 87855285203..aa77a5c228a 100644 --- a/spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb +++ b/spec/migrations/backfill_escalation_policies_for_oncall_schedules_spec.rb @@ -3,48 +3,48 @@ require 'spec_helper' require_migration! -RSpec.describe BackfillEscalationPoliciesForOncallSchedules do - let_it_be(:projects) { table(:projects) } - let_it_be(:schedules) { table(:incident_management_oncall_schedules) } - let_it_be(:policies) { table(:incident_management_escalation_policies) } - let_it_be(:rules) { table(:incident_management_escalation_rules) } +RSpec.describe BackfillEscalationPoliciesForOncallSchedules, feature_category: :incident_management do + let!(:projects) { table(:projects) } + let!(:schedules) { table(:incident_management_oncall_schedules) } + let!(:policies) { table(:incident_management_escalation_policies) } + let!(:rules) { table(:incident_management_escalation_rules) } # Project with no schedules - let_it_be(:namespace) { table(:namespaces).create!(name: 'gitlab', path: 'gitlab') } - let_it_be(:project_a) { projects.create!(namespace_id: namespace.id) } + let!(:namespace) { table(:namespaces).create!(name: 'gitlab', path: 'gitlab') } + let!(:project_a) { projects.create!(namespace_id: namespace.id) } context 'with backfill-able schedules' do # Project with one schedule - let_it_be(:project_b) { projects.create!(namespace_id: namespace.id) } - let_it_be(:schedule_b1) { schedules.create!(project_id: project_b.id, iid: 1, name: 'Schedule B1') } + let!(:project_b) { projects.create!(namespace_id: namespace.id) } + let!(:schedule_b1) { schedules.create!(project_id: project_b.id, iid: 1, name: 'Schedule B1') } # Project with multiple schedules - let_it_be(:project_c) { projects.create!(namespace_id: namespace.id) } - let_it_be(:schedule_c1) { schedules.create!(project_id: project_c.id, iid: 1, name: 'Schedule C1') } - let_it_be(:schedule_c2) { schedules.create!(project_id: project_c.id, iid: 2, name: 'Schedule C2') } + let!(:project_c) { projects.create!(namespace_id: namespace.id) } + let!(:schedule_c1) { schedules.create!(project_id: project_c.id, iid: 1, name: 'Schedule C1') } + let!(:schedule_c2) { schedules.create!(project_id: project_c.id, iid: 2, name: 'Schedule C2') } # Project with a single schedule which already has a policy - let_it_be(:project_d) { projects.create!(namespace_id: namespace.id) } - let_it_be(:schedule_d1) { schedules.create!(project_id: project_d.id, iid: 1, name: 'Schedule D1') } - let_it_be(:policy_d1) { policies.create!(project_id: project_d.id, name: 'Policy D1') } - let_it_be(:rule_d1) { rules.create!(policy_id: policy_d1.id, oncall_schedule_id: schedule_d1.id, status: 2, elapsed_time_seconds: 60) } + let!(:project_d) { projects.create!(namespace_id: namespace.id) } + let!(:schedule_d1) { schedules.create!(project_id: project_d.id, iid: 1, name: 'Schedule D1') } + let!(:policy_d1) { policies.create!(project_id: project_d.id, name: 'Policy D1') } + let!(:rule_d1) { rules.create!(policy_id: policy_d1.id, oncall_schedule_id: schedule_d1.id, status: 2, elapsed_time_seconds: 60) } # Project with a multiple schedule, one of which already has a policy - let_it_be(:project_e) { projects.create!(namespace_id: namespace.id) } - let_it_be(:schedule_e1) { schedules.create!(project_id: project_e.id, iid: 1, name: 'Schedule E1') } - let_it_be(:schedule_e2) { schedules.create!(project_id: project_e.id, iid: 2, name: 'Schedule E2') } - let_it_be(:policy_e1) { policies.create!(project_id: project_e.id, name: 'Policy E1') } - let_it_be(:rule_e1) { rules.create!(policy_id: policy_e1.id, oncall_schedule_id: schedule_e2.id, status: 2, elapsed_time_seconds: 60) } + let!(:project_e) { projects.create!(namespace_id: namespace.id) } + let!(:schedule_e1) { schedules.create!(project_id: project_e.id, iid: 1, name: 'Schedule E1') } + let!(:schedule_e2) { schedules.create!(project_id: project_e.id, iid: 2, name: 'Schedule E2') } + let!(:policy_e1) { policies.create!(project_id: project_e.id, name: 'Policy E1') } + let!(:rule_e1) { rules.create!(policy_id: policy_e1.id, oncall_schedule_id: schedule_e2.id, status: 2, elapsed_time_seconds: 60) } # Project with a multiple schedule, with multiple policies - let_it_be(:project_f) { projects.create!(namespace_id: namespace.id) } - let_it_be(:schedule_f1) { schedules.create!(project_id: project_f.id, iid: 1, name: 'Schedule F1') } - let_it_be(:schedule_f2) { schedules.create!(project_id: project_f.id, iid: 2, name: 'Schedule F2') } - let_it_be(:policy_f1) { policies.create!(project_id: project_f.id, name: 'Policy F1') } - let_it_be(:rule_f1) { rules.create!(policy_id: policy_f1.id, oncall_schedule_id: schedule_f1.id, status: 2, elapsed_time_seconds: 60) } - let_it_be(:rule_f2) { rules.create!(policy_id: policy_f1.id, oncall_schedule_id: schedule_f2.id, status: 2, elapsed_time_seconds: 60) } - let_it_be(:policy_f2) { policies.create!(project_id: project_f.id, name: 'Policy F2') } - let_it_be(:rule_f3) { rules.create!(policy_id: policy_f2.id, oncall_schedule_id: schedule_f2.id, status: 1, elapsed_time_seconds: 10) } + let!(:project_f) { projects.create!(namespace_id: namespace.id) } + let!(:schedule_f1) { schedules.create!(project_id: project_f.id, iid: 1, name: 'Schedule F1') } + let!(:schedule_f2) { schedules.create!(project_id: project_f.id, iid: 2, name: 'Schedule F2') } + let!(:policy_f1) { policies.create!(project_id: project_f.id, name: 'Policy F1') } + let!(:rule_f1) { rules.create!(policy_id: policy_f1.id, oncall_schedule_id: schedule_f1.id, status: 2, elapsed_time_seconds: 60) } + let!(:rule_f2) { rules.create!(policy_id: policy_f1.id, oncall_schedule_id: schedule_f2.id, status: 2, elapsed_time_seconds: 60) } + let!(:policy_f2) { policies.create!(project_id: project_f.id, name: 'Policy F2') } + let!(:rule_f3) { rules.create!(policy_id: policy_f2.id, oncall_schedule_id: schedule_f2.id, status: 1, elapsed_time_seconds: 10) } it 'backfills escalation policies correctly' do expect { migrate! } |