class RSpec::Matchers::BuiltIn::BeBetween
@api private Provides the implementation for ‘be_between`. Not intended to be instantiated directly.
Public Class Methods
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 8 def initialize(min, max) @min, @max = min, max inclusive end
Public Instance Methods
@api private @return [String]
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 57 def description "be between #{description_of @min} and #{description_of @max} (#{@mode})" end
@api public Makes the between comparison exclusive.
@example
expect(3).to be_between(2, 4).exclusive
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 33 def exclusive @less_than_operator = :< @greater_than_operator = :> @mode = :exclusive self end
@api private @return [String]
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 51 def failure_message "#{super}#{not_comparable_clause}" end
@api public Makes the between comparison inclusive.
@example
expect(3).to be_between(2, 3).inclusive
@note The matcher is inclusive by default; this simply provides
a way to be more explicit about it.
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 21 def inclusive @less_than_operator = :<= @greater_than_operator = :>= @mode = :inclusive self end
@api private @return [Boolean]
# File rspec-expectations/lib/rspec/matchers/built_in/be_between.rb, line 42 def matches?(actual) @actual = actual comparable? && compare rescue ArgumentError false end