summaryrefslogtreecommitdiff
path: root/spec/frontend/fixtures/analytics.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/fixtures/analytics.rb')
-rw-r--r--spec/frontend/fixtures/analytics.rb71
1 files changed, 71 insertions, 0 deletions
diff --git a/spec/frontend/fixtures/analytics.rb b/spec/frontend/fixtures/analytics.rb
new file mode 100644
index 00000000000..6d106dce166
--- /dev/null
+++ b/spec/frontend/fixtures/analytics.rb
@@ -0,0 +1,71 @@
+# frozen_string_literal: true
+require 'spec_helper'
+
+RSpec.describe 'Analytics (JavaScript fixtures)', :sidekiq_inline do
+ include_context 'Analytics fixtures shared context'
+
+ let_it_be(:value_stream_id) { 'default' }
+
+ before(:all) do
+ clean_frontend_fixtures('projects/analytics/value_stream_analytics/')
+ end
+
+ before do
+ update_metrics
+ create_deployment
+ end
+
+ describe Projects::Analytics::CycleAnalytics::StagesController, type: :controller do
+ render_views
+
+ let(:params) { { namespace_id: group, project_id: project, value_stream_id: value_stream_id } }
+
+ before do
+ project.add_developer(user)
+
+ sign_in(user)
+ end
+
+ it 'projects/analytics/value_stream_analytics/stages' do
+ get(:index, params: params, format: :json)
+
+ expect(response).to be_successful
+ end
+ end
+
+ describe Projects::CycleAnalytics::EventsController, type: :controller do
+ render_views
+ let(:params) { { namespace_id: group, project_id: project, value_stream_id: value_stream_id } }
+
+ before do
+ project.add_developer(user)
+
+ sign_in(user)
+ end
+
+ Gitlab::Analytics::CycleAnalytics::DefaultStages.all.each do |stage|
+ it "projects/analytics/value_stream_analytics/events/#{stage[:name]}" do
+ get(stage[:name], params: params, format: :json)
+
+ expect(response).to be_successful
+ end
+ end
+ end
+
+ describe Projects::Analytics::CycleAnalytics::SummaryController, type: :controller do
+ render_views
+ let(:params) { { namespace_id: group, project_id: project, value_stream_id: value_stream_id } }
+
+ before do
+ project.add_developer(user)
+
+ sign_in(user)
+ end
+
+ it "projects/analytics/value_stream_analytics/summary" do
+ get(:show, params: params, format: :json)
+
+ expect(response).to be_successful
+ end
+ end
+end