diff options
Diffstat (limited to 'spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb')
-rw-r--r-- | spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb b/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb index 8e552b23283..d3cf3f93693 100644 --- a/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb +++ b/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb @@ -7,7 +7,7 @@ describe Gitlab::CycleAnalytics::GroupStageSummary do let(:project_2) { create(:project, :repository, namespace: group) } let(:from) { 1.day.ago } let(:user) { create(:user, :admin) } - subject { described_class.new(group, from: Time.now, current_user: user).data } + subject { described_class.new(group, from: Time.now, current_user: user, options: {}).data } describe "#new_issues" do it "finds the number of issues created after the 'from date'" do @@ -20,7 +20,7 @@ describe Gitlab::CycleAnalytics::GroupStageSummary do end it "doesn't find issues from other projects" do - Timecop.freeze(5.days.from_now) { create(:issue, project: create(:project, namespace: create(:group))) } + Timecop.freeze(5.days.from_now) { create(:issue, project: create(:project)) } Timecop.freeze(5.days.from_now) { create(:issue, project: project) } Timecop.freeze(5.days.from_now) { create(:issue, project: project_2) } @@ -34,6 +34,16 @@ describe Gitlab::CycleAnalytics::GroupStageSummary do expect(subject.first[:value]).to eq(3) end + + it "finds issues from projects specified in options" do + Timecop.freeze(5.days.from_now) { create(:issue, project: create(:project, namespace: group)) } + Timecop.freeze(5.days.from_now) { create(:issue, project: project) } + Timecop.freeze(5.days.from_now) { create(:issue, project: project_2) } + + subject = described_class.new(group, from: Time.now, current_user: user, options: { projects: [project.id, project_2.id] }).data + + expect(subject.first[:value]).to eq(2) + end end describe "#deploys" do @@ -61,5 +71,16 @@ describe Gitlab::CycleAnalytics::GroupStageSummary do expect(subject.second[:value]).to eq(1) end + + it "shows deploys from projects specified in options" do + Timecop.freeze(5.days.from_now) do + create(:deployment, :success, project: project) + create(:deployment, :success, project: project_2) + create(:deployment, :success, project: create(:project, :repository, namespace: group, name: 'not_applicable')) + end + subject = described_class.new(group, from: Time.now, current_user: user, options: { projects: [project.id, project_2.id] }).data + + expect(subject.second[:value]).to eq(2) + end end end |