Sha256: 9d893beb194833525743108525844549ba8a83af4626b62ce8b39f7c272ca1a1

Contents?: true

Size: 1.3 KB

Versions: 3

Compression:

Stored size: 1.3 KB

Contents

require File.dirname(__FILE__) + '/../spec_helper'

def chcpu(cfg = {})
  Eye::Checker.create(123, {:type => :cpu, :every => 5.seconds, 
        :times => 1}.merge(cfg))
end

describe "Eye::Checker::Cpu" do

  describe "without below" do
    subject{ chcpu }

    it "get_value" do
      mock(Eye::SystemResources).cpu(123){ 65 }
      subject.get_value.should == 65
    end

    it "without below always true" do
      stub(subject).get_value{ 15 }
      subject.check.should == true

      stub(subject).get_value{ 20 }
      subject.check.should == true
    end
  end

  describe "with below" do
    subject{ chcpu(:below => 30) }

    it "good" do
      stub(subject).get_value{ 20 }
      subject.check.should == true

      stub(subject).get_value{ 25 }
      subject.check.should == true
    end

    it "good" do
      stub(subject).get_value{ 25 }
      subject.check.should == true

      stub(subject).get_value{ 35 }
      subject.check.should == false
    end

  end

  describe "validates" do
    it "ok" do
      Eye::Checker.validate!({:type => :cpu, :every => 5.seconds, :times => 1, :below => 100})
    end

    it "bad param below" do
      expect{ Eye::Checker.validate!({:type => :cpu, :every => 5.seconds, :times => 1, :below => {1 => 2}}) }.to raise_error(Eye::Checker::Validation::Error)
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
eye-0.2.1 spec/checker/cpu_spec.rb
eye-0.2 spec/checker/cpu_spec.rb
eye-0.1.11 spec/checker/cpu_spec.rb