Sha256: 461d325e3bea2bfc1ea09c50b9b6ae0031222776837d40de8b5c7c463cce1e9c

Contents?: true

Size: 1.73 KB

Versions: 1

Compression:

Stored size: 1.73 KB

Contents

require File.dirname(__FILE__) + '/../../spec_helper.rb'
module Rspec
  module Matchers
    describe "[actual.should] be_close(expected, delta)" do
      it "matches when actual == expected" do
        be_close(5.0, 0.5).matches?(5.0).should be_true
      end
      it "matches when actual < (expected + delta)" do
        be_close(5.0, 0.5).matches?(5.49).should be_true
      end
      it "matches when actual > (expected - delta)" do
        be_close(5.0, 0.5).matches?(4.51).should be_true
      end
      it "does not match when actual == (expected - delta)" do
        be_close(5.0, 0.5).matches?(4.5).should be_false
      end
      it "does not match when actual < (expected - delta)" do
        be_close(5.0, 0.5).matches?(4.49).should be_false
      end
      it "does not match when actual == (expected + delta)" do
        be_close(5.0, 0.5).matches?(5.5).should be_false
      end
      it "does not match when actual > (expected + delta)" do
        be_close(5.0, 0.5).matches?(5.51).should be_false
      end
      it "provides a failure message for should" do
        #given
          matcher = be_close(5.0, 0.5)
        #when
          matcher.matches?(5.51)
        #then
          matcher.failure_message_for_should.should == "expected 5.0 +/- (< 0.5), got 5.51"
      end

      it "provides a failure message for should tno" do
        #given
          matcher = be_close(5.0, 0.5)
        #when
          matcher.matches?(5.49)
        #then
          matcher.failure_message_for_should_not.should == "expected 5.0 +/- (< 0.5), got 5.49"
      end
      it "provides a description" do
        matcher = be_close(5.0, 0.5)
        matcher.matches?(5.1)
        matcher.description.should == "be close to 5.0 (within +- 0.5)"
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rspec-expectations-2.0.0.a2 spec/rspec/matchers/be_close_spec.rb