diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
commit | 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 (patch) | |
tree | a77e7fe7a93de11213032ed4ab1f33a3db51b738 /spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb | |
parent | 00b35af3db1abfe813a778f643dad221aad51fca (diff) |
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb')
-rw-r--r-- | spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb b/spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb index 67336cf83e6..ea9e8fa6795 100644 --- a/spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb +++ b/spec/lib/gitlab/metrics/sidekiq_middleware_spec.rb @@ -10,17 +10,19 @@ describe Gitlab::Metrics::SidekiqMiddleware do it 'tracks the transaction' do worker = double(:worker, class: double(:class, name: 'TestWorker')) - expect(Gitlab::Metrics::BackgroundTransaction).to receive(:new) - .with(worker.class) - .and_call_original + expect_next_instance_of(Gitlab::Metrics::BackgroundTransaction) do |transaction| + expect(transaction).to receive(:set).with(:sidekiq_queue_duration, instance_of(Float)) + expect(transaction).to receive(:increment).with(:db_count, 1) + end - expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:set) - .with(:sidekiq_queue_duration, instance_of(Float)) + middleware.call(worker, message, :test) do + ActiveRecord::Base.connection.execute('SELECT pg_sleep(0.1);') + end - middleware.call(worker, message, :test) { nil } + expect(message).to include(:db_count, :db_write_count, :db_cached_count) end - it 'tracks the transaction (for messages without `enqueued_at`)' do + it 'tracks the transaction (for messages without `enqueued_at`)', :aggregate_failures do worker = double(:worker, class: double(:class, name: 'TestWorker')) expect(Gitlab::Metrics::BackgroundTransaction).to receive(:new) @@ -33,7 +35,7 @@ describe Gitlab::Metrics::SidekiqMiddleware do middleware.call(worker, {}, :test) { nil } end - it 'tracks any raised exceptions' do + it 'tracks any raised exceptions', :aggregate_failures do worker = double(:worker, class: double(:class, name: 'TestWorker')) expect_any_instance_of(Gitlab::Metrics::Transaction) @@ -44,6 +46,8 @@ describe Gitlab::Metrics::SidekiqMiddleware do expect { middleware.call(worker, message, :test) } .to raise_error(RuntimeError) + + expect(message).to include(:db_count, :db_write_count, :db_cached_count) end end end |