Sha256: 5583096c2ffceb7e612b35f333dbeecb13c877646785fa6e1b04667fec20ffc5

Contents?: true

Size: 1.29 KB

Versions: 3

Compression:

Stored size: 1.29 KB

Contents

require ::File.expand_path('../spec_helper.rb', __FILE__)

describe FnordMetric::SumMetric do

  before(:each) do
    FnordMetric::Event.destroy_all
    FnordMetric.track('a_event_type', :time => 33.hours.ago, :myval => 4)
    FnordMetric.track('a_event_type', :time => 32.hours.ago, :myval => 2)
    FnordMetric.track('a_event_type', :time => 28.hours.ago, :myval => 9)
    FnordMetric.track('a_event_type', :time => 27.hours.ago, :myval => 1)
    FnordMetric.track('a_event_type', :time => 26.hours.ago, :myval => 6)
    FnordMetric.track('a_event_type', :time => 13.hours.ago, :myval => 3)
    FnordMetric.track('a_event_type', :time => 12.hours.ago, :myval => 8)
    FnordMetric.track('a_event_type', :time => 11.hours.ago, :myval => 7)
  end

  it "should sum events until now" do
    metric = FnordMetric.metric('a_event_count', :sum => :myval, :types => [:a_event_type])
    metric.current.should == 40
  end
  
  it "should sum events until 18 hours ago" do
    metric = FnordMetric.metric('a_event_count', :sum => :myval, :types => [:a_event_type])
    metric.at(18.hours.ago).should == 22
  end

  it "should sum events from 30 to 20 hours ago" do
    metric = FnordMetric.metric('a_event_count', :sum => :myval, :types => [:a_event_type])
    metric.at(30.hours.ago..20.hours.ago).should == 16
  end


end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fnordmetric-0.5.1 _spec/sum_metric_spec.rb
fnordmetric-0.5.0 _spec/sum_metric_spec.rb
fnordmetric-0.3.2 spec/sum_metric_spec.rb