From d46f96e45c9811be1b4818871942f13f5782bf02 Mon Sep 17 00:00:00 2001 From: Jan Matuszewski Date: Tue, 17 Jan 2023 04:57:50 +0100 Subject: [PATCH] Fix performance of report builder spec (#6024) --- Gemfile | 2 ++ Gemfile.lock | 2 ++ spec/builders/v2/report_builder_spec.rb | 15 ++++++++------- spec/rails_helper.rb | 4 ++++ 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/Gemfile b/Gemfile index bf57e2db0..1d9c50cb6 100644 --- a/Gemfile +++ b/Gemfile @@ -162,6 +162,8 @@ group :test do gem 'database_cleaner' # mock http calls gem 'webmock' + # test profiling + gem 'test-prof' end group :development, :test do diff --git a/Gemfile.lock b/Gemfile.lock index 3c53da637..4b805b109 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -656,6 +656,7 @@ GEM statsd-ruby (1.5.0) stripe (6.5.0) telephone_number (1.4.16) + test-prof (1.0.11) thor (1.2.1) tilt (2.0.10) time_diff (0.3.0) @@ -815,6 +816,7 @@ DEPENDENCIES squasher stripe telephone_number + test-prof time_diff twilio-ruby (~> 5.66) twitty diff --git a/spec/builders/v2/report_builder_spec.rb b/spec/builders/v2/report_builder_spec.rb index 5f63ccac2..714e5fda1 100644 --- a/spec/builders/v2/report_builder_spec.rb +++ b/spec/builders/v2/report_builder_spec.rb @@ -2,15 +2,16 @@ require 'rails_helper' describe ::V2::ReportBuilder do include ActiveJob::TestHelper - let!(:account) { create(:account) } - let!(:user) { create(:user, account: account) } - let!(:inbox) { create(:inbox, account: account) } - let(:inbox_member) { create(:inbox_member, user: user, inbox: inbox) } - let!(:label_1) { create(:label, title: 'Label_1', account: account) } - let!(:label_2) { create(:label, title: 'Label_2', account: account) } + let_it_be(:account) { create(:account) } + let_it_be(:label_1) { create(:label, title: 'Label_1', account: account) } + let_it_be(:label_2) { create(:label, title: 'Label_2', account: account) } describe '#timeseries' do - before do + before_all do + user = create(:user, account: account) + inbox = create(:inbox, account: account) + create(:inbox_member, user: user, inbox: inbox) + gravatar_url = 'https://www.gravatar.com' stub_request(:get, /#{gravatar_url}.*/).to_return(status: 404) diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 3b42c77ff..2e34ab601 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -7,6 +7,10 @@ require 'rspec/rails' require 'pundit/rspec' require 'sidekiq/testing' +# test-prof helpers for tests optimization +require 'test_prof/recipes/rspec/before_all' +require 'test_prof/recipes/rspec/let_it_be' + # Add additional requires below this line. Rails is not loaded until this point! # Requires supporting ruby files with custom matchers and macros, etc, in