Module: StatsD::Instrument::Assertions

Defined in:
lib/statsd/instrument/assertions.rb

Instance Method Summary collapse

Instance Method Details

#assert_no_statsd_calls(metric_name = nil, &block) ⇒ Object



12
13
14
15
16
# File 'lib/statsd/instrument/assertions.rb', line 12

def assert_no_statsd_calls(metric_name = nil, &block)
  metrics = capture_statsd_calls(&block)
  metrics.select! { |m| m.name == metric_name } if metric_name
  assert metrics.empty?, "No StatsD calls for metric #{metric_name} expected."
end

#assert_statsd_gauge(metric_name, options = {}, &block) ⇒ Object



26
27
28
# File 'lib/statsd/instrument/assertions.rb', line 26

def assert_statsd_gauge(metric_name, options = {}, &block)
  assert_statsd_call(:g, metric_name, options, &block)
end

#assert_statsd_histogram(metric_name, options = {}, &block) ⇒ Object



30
31
32
# File 'lib/statsd/instrument/assertions.rb', line 30

def assert_statsd_histogram(metric_name, options = {}, &block)
  assert_statsd_call(:h, metric_name, options, &block)
end

#assert_statsd_increment(metric_name, options = {}, &block) ⇒ Object



18
19
20
# File 'lib/statsd/instrument/assertions.rb', line 18

def assert_statsd_increment(metric_name, options = {}, &block)
  assert_statsd_call(:c, metric_name, options, &block)
end

#assert_statsd_key_value(metric_name, options = {}, &block) ⇒ Object



38
39
40
# File 'lib/statsd/instrument/assertions.rb', line 38

def assert_statsd_key_value(metric_name, options = {}, &block)
  assert_statsd_call(:kv, metric_name, options, &block)
end

#assert_statsd_measure(metric_name, options = {}, &block) ⇒ Object



22
23
24
# File 'lib/statsd/instrument/assertions.rb', line 22

def assert_statsd_measure(metric_name, options = {}, &block)
  assert_statsd_call(:ms, metric_name, options, &block)
end

#assert_statsd_set(metric_name, options = {}, &block) ⇒ Object



34
35
36
# File 'lib/statsd/instrument/assertions.rb', line 34

def assert_statsd_set(metric_name, options = {}, &block)
  assert_statsd_call(:s, metric_name, options, &block)
end

#capture_statsd_calls(&block) ⇒ Object



3
4
5
6
7
8
9
10
# File 'lib/statsd/instrument/assertions.rb', line 3

def capture_statsd_calls(&block)
  mock_backend = StatsD::Instrument::Backends::CaptureBackend.new
  old_backend, StatsD.backend = StatsD.backend, mock_backend
  block.call
  mock_backend.collected_metrics
ensure
  StatsD.backend = old_backend
end