diff options
Diffstat (limited to 'spec/lib/gitlab/ci/trace/metrics_spec.rb')
-rw-r--r-- | spec/lib/gitlab/ci/trace/metrics_spec.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/lib/gitlab/ci/trace/metrics_spec.rb b/spec/lib/gitlab/ci/trace/metrics_spec.rb index 6518d0ab075..53e55a57973 100644 --- a/spec/lib/gitlab/ci/trace/metrics_spec.rb +++ b/spec/lib/gitlab/ci/trace/metrics_spec.rb @@ -15,4 +15,27 @@ RSpec.describe Gitlab::Ci::Trace::Metrics, :prometheus do end end end + + describe '#increment_error_counter' do + context 'when the operation type is known' do + it 'increments the counter' do + subject.increment_error_counter(type: :chunks_invalid_size) + subject.increment_error_counter(type: :chunks_invalid_checksum) + subject.increment_error_counter(type: :archive_invalid_checksum) + + expect(described_class.trace_errors_counter.get(type: :chunks_invalid_size)).to eq 1 + expect(described_class.trace_errors_counter.get(type: :chunks_invalid_checksum)).to eq 1 + expect(described_class.trace_errors_counter.get(type: :archive_invalid_checksum)).to eq 1 + + expect(described_class.trace_errors_counter.values.count).to eq 3 + end + end + + context 'when the operation type is known' do + it 'raises an exception' do + expect { subject.increment_error_counter(type: :invalid_type) } + .to raise_error(ArgumentError) + end + end + end end |