Sha256: 07b9a513750dc2f24963a5f752b8769274e444ab9de458f4dc09abf4f8527b4f
Contents?: true
Size: 1.23 KB
Versions: 25
Compression:
Stored size: 1.23 KB
Contents
require 'spec_helper' describe PulseMeter::Sensor::HashedCounter do let(:name){ :some_counter } let(:sensor){ described_class.new(name) } let(:redis){ PulseMeter.redis } describe "#event" do it "should increment sensor value by passed value" do expect{ sensor.event({"foo" => 10}) }.to change{ sensor.value["foo"] }.from(0).to(10) expect{ sensor.event({"foo" => 15}) }.to change{ sensor.value["foo"] }.from(10).to(25) end it "should truncate increment value" do expect{ sensor.event({"foo" => 10.4}) }.to change{ sensor.value["foo"] }.from(0).to(10) expect{ sensor.event({"foo" => 15.1}) }.to change{ sensor.value["foo"] }.from(10).to(25) end end describe "#value" do it "should have initial value 0" do sensor.value["foo"].should == 0 end it "should store redis hash by value_key" do sensor.event({"foo" => 1}) sensor.value.should == {"foo" => 1} redis.hgetall(sensor.value_key).should == {"foo" => "1"} end end describe "#incr" do it "should increment key value by 1" do expect{ sensor.incr("foo") }.to change{ sensor.value["foo"] }.from(0).to(1) expect{ sensor.incr("foo") }.to change{ sensor.value["foo"] }.from(1).to(2) end end end
Version data entries
25 entries across 25 versions & 2 rubygems