diff options
author | Adam Hegyi <ahegyi@gitlab.com> | 2019-08-23 23:28:11 +0300 |
---|---|---|
committer | Mayra Cabrera <mcabrera@gitlab.com> | 2019-08-23 23:28:11 +0300 |
commit | 60e33885269bdae71e9710b17f199708b9b7c9e0 (patch) | |
tree | fce6fa4f2c779c4b3c5088577cc4fb26196da182 /spec/models/analytics | |
parent | 0a94aac8a291ef8432dadfb4cbd70ecae62becff (diff) |
Implement validation logic to ProjectStage
- Introducting StageEvents to define the available events
- Define the event pairing rules, since some events are not compatible
- Express default Cycle Analytics stages with the event structure
Diffstat (limited to 'spec/models/analytics')
-rw-r--r-- | spec/models/analytics/cycle_analytics/project_stage_spec.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/spec/models/analytics/cycle_analytics/project_stage_spec.rb b/spec/models/analytics/cycle_analytics/project_stage_spec.rb index 4e3923e82b1..83d6ff754c5 100644 --- a/spec/models/analytics/cycle_analytics/project_stage_spec.rb +++ b/spec/models/analytics/cycle_analytics/project_stage_spec.rb @@ -6,4 +6,18 @@ describe Analytics::CycleAnalytics::ProjectStage do describe 'associations' do it { is_expected.to belong_to(:project) } end + + it 'default stages must be valid' do + project = create(:project) + + Gitlab::Analytics::CycleAnalytics::DefaultStages.all.each do |params| + stage = described_class.new(params.merge(project: project)) + expect(stage).to be_valid + end + end + + it_behaves_like "cycle analytics stage" do + let(:parent) { create(:project) } + let(:parent_name) { :project } + end end |