summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb14
1 files changed, 10 insertions, 4 deletions
diff --git a/spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb b/spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb
index 0f495f3e671..7d157563f5f 100644
--- a/spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb
+++ b/spec/requests/api/graphql/project/project_pipeline_statistics_spec.rb
@@ -42,13 +42,19 @@ RSpec.describe 'rendering project pipeline statistics' do
expect(graphql_data_at(:project, :pipelineAnalytics, :weekPipelinesLabels).length).to eq(8)
end
- it "contains two arrays of 31 elements each for the month pipelines" do
- post_graphql(query, current_user: user)
+ shared_examples 'monthly statistics' do |timestamp, expected_quantity|
+ it "contains two arrays of #{expected_quantity} elements each for the month pipelines" do
+ travel_to(timestamp) { post_graphql(query, current_user: user) }
- expect(graphql_data_at(:project, :pipelineAnalytics, :monthPipelinesTotals).length).to eq(31)
- expect(graphql_data_at(:project, :pipelineAnalytics, :monthPipelinesLabels).length).to eq(31)
+ expect(graphql_data_at(:project, :pipelineAnalytics, :monthPipelinesTotals).length).to eq(expected_quantity)
+ expect(graphql_data_at(:project, :pipelineAnalytics, :monthPipelinesLabels).length).to eq(expected_quantity)
+ end
end
+ it_behaves_like 'monthly statistics', Time.zone.local(2019, 2, 28), 32
+ it_behaves_like 'monthly statistics', Time.zone.local(2020, 12, 30), 31
+ it_behaves_like 'monthly statistics', Time.zone.local(2020, 12, 31), 32
+
it "contains two arrays of 13 elements each for the year pipelines" do
post_graphql(query, current_user: user)