Sha256: 4cc571bba4becbba62a8051192ec6dd08dcc096398faa5639574df2d55e26bfa

Contents?: true

Size: 608 Bytes

Versions: 198

Compression:

Stored size: 608 Bytes

Contents

TOLERANCE = 0.00003 unless Object.const_defined?(:TOLERANCE)

class BeCloseMatcher
  def initialize(expected, tolerance)
    @expected = expected
    @tolerance = tolerance
  end

  def matches?(actual)
    @actual = actual
    (@actual - @expected).abs < @tolerance
  end

  def failure_message
    ["Expected #{@expected}", "to be within +/- #{@tolerance} of #{@actual}"]
  end

  def negative_failure_message
    ["Expected #{@expected}", "not to be within +/- #{@tolerance} of #{@actual}"]
  end
end

class Object
  def be_close(expected, tolerance)
    BeCloseMatcher.new(expected, tolerance)
  end
end

Version data entries

198 entries across 174 versions & 4 rubygems

Version Path
mspec-1.7.0 lib/mspec/matchers/be_close.rb
mspec-1.6.0 lib/mspec/matchers/be_close.rb
mspec-1.5.21 lib/mspec/matchers/be_close.rb
mspec-1.5.20 lib/mspec/matchers/be_close.rb
mspec-1.5.19 lib/mspec/matchers/be_close.rb
mspec-1.5.18 lib/mspec/matchers/be_close.rb
rhodes-3.5.1.12 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.5 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.4.2 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.4 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.3 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.3.beta.4 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.3.beta.3 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.3.beta.2 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.3.beta.1 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.2 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.2.beta.7 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.2.beta.6 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.2.beta.5 lib/extensions/mspec/mspec/matchers/be_close.rb
rhodes-3.3.2.beta.4 lib/extensions/mspec/mspec/matchers/be_close.rb