Module: StatsD::Instrument::Assertions
- Includes:
- Helpers
- Defined in:
- lib/statsd/instrument/assertions.rb
Instance Method Summary collapse
- #assert_no_statsd_calls(metric_name = nil, &block) ⇒ Object
- #assert_statsd_calls(expected_metrics, &block) ⇒ Object
- #assert_statsd_gauge(metric_name, options = {}, &block) ⇒ Object
- #assert_statsd_histogram(metric_name, options = {}, &block) ⇒ Object
- #assert_statsd_increment(metric_name, options = {}, &block) ⇒ Object
- #assert_statsd_key_value(metric_name, options = {}, &block) ⇒ Object
- #assert_statsd_measure(metric_name, options = {}, &block) ⇒ Object
- #assert_statsd_set(metric_name, options = {}, &block) ⇒ Object
Methods included from Helpers
Instance Method Details
#assert_no_statsd_calls(metric_name = nil, &block) ⇒ Object
4 5 6 7 8 |
# File 'lib/statsd/instrument/assertions.rb', line 4 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 #{metrics.map(&:name).join(', ')} expected." end |
#assert_statsd_calls(expected_metrics, &block) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/statsd/instrument/assertions.rb', line 35 def assert_statsd_calls(expected_metrics, &block) metrics = capture_statsd_calls(&block) matched_expected_metrics = [] expected_metrics.each do |expected_metric| expected_metric_times = expected_metric.times expected_metric_times_remaining = expected_metric.times filtered_metrics = metrics.select { |m| m.type == expected_metric.type && m.name == expected_metric.name } assert filtered_metrics.length > 0, "No StatsD calls for metric #{expected_metric.name} of type #{expected_metric.type} were made." filtered_metrics.each do |metric| assert within_numeric_range?(metric.sample_rate), "Unexpected sample rate type for metric #{metric.name}, must be numeric" if expected_metric.matches(metric) assert expected_metric_times_remaining > 0, "Unexpected StatsD call; number of times this metric was expected exceeded: #{expected_metric.inspect}" expected_metric_times_remaining -= 1 metrics.delete(metric) if expected_metric_times_remaining == 0 matched_expected_metrics << expected_metric end end end assert expected_metric_times_remaining == 0, "Metric expected #{expected_metric_times} times but seen"\ " #{expected_metric_times-expected_metric_times_remaining}"\ " times: #{expected_metric.inspect}" end expected_metrics -= matched_expected_metrics assert expected_metrics.empty?, "Unexpected StatsD calls; the following metric expectations were not satisfied: #{expected_metrics.inspect}" end |
#assert_statsd_gauge(metric_name, options = {}, &block) ⇒ Object
18 19 20 |
# File 'lib/statsd/instrument/assertions.rb', line 18 def assert_statsd_gauge(metric_name, = {}, &block) assert_statsd_call(:g, metric_name, , &block) end |
#assert_statsd_histogram(metric_name, options = {}, &block) ⇒ Object
22 23 24 |
# File 'lib/statsd/instrument/assertions.rb', line 22 def assert_statsd_histogram(metric_name, = {}, &block) assert_statsd_call(:h, metric_name, , &block) end |
#assert_statsd_increment(metric_name, options = {}, &block) ⇒ Object
10 11 12 |
# File 'lib/statsd/instrument/assertions.rb', line 10 def assert_statsd_increment(metric_name, = {}, &block) assert_statsd_call(:c, metric_name, , &block) end |
#assert_statsd_key_value(metric_name, options = {}, &block) ⇒ Object
30 31 32 |
# File 'lib/statsd/instrument/assertions.rb', line 30 def assert_statsd_key_value(metric_name, = {}, &block) assert_statsd_call(:kv, metric_name, , &block) end |
#assert_statsd_measure(metric_name, options = {}, &block) ⇒ Object
14 15 16 |
# File 'lib/statsd/instrument/assertions.rb', line 14 def assert_statsd_measure(metric_name, = {}, &block) assert_statsd_call(:ms, metric_name, , &block) end |
#assert_statsd_set(metric_name, options = {}, &block) ⇒ Object
26 27 28 |
# File 'lib/statsd/instrument/assertions.rb', line 26 def assert_statsd_set(metric_name, = {}, &block) assert_statsd_call(:s, metric_name, , &block) end |