Class: RSpec::Matchers::BuiltIn::BeComparedTo Private

Inherits:
BaseMatcher
  • Object
show all
Defined in:
lib/rspec/matchers/built_in/be.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Provides the implementation of be <operator> value. Not intended to be instantiated directly.

Constant Summary

Constant Summary

Constants inherited from BaseMatcher

RSpec::Matchers::BuiltIn::BaseMatcher::UNDEFINED

Instance Method Summary (collapse)

Methods inherited from BaseMatcher

#diffable?, #match_unless_raises

Methods included from Composable

#===, #and, #description_of, enumerable?, #or, surface_descriptions_in, #values_match?

Methods included from Pretty

#name, split_words, #to_sentence, #to_word

Constructor Details

- (BeComparedTo) initialize(operand, operator)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of BeComparedTo



142
143
144
145
# File 'lib/rspec/matchers/built_in/be.rb', line 142

def initialize(operand, operator)
  @expected, @operator = operand, operator
  @args = []
end

Instance Method Details

- (String) description

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (String)


171
172
173
# File 'lib/rspec/matchers/built_in/be.rb', line 171

def description
  "be #{@operator} #{expected_to_sentence}#{args_to_sentence}"
end

- (String) failure_message

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (String)


154
155
156
# File 'lib/rspec/matchers/built_in/be.rb', line 154

def failure_message
  "expected: #{@operator} #{@expected.inspect}\n     got: #{@operator.to_s.gsub(/./, ' ')} #{@actual.inspect}"
end

- (String) failure_message_when_negated

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (String)


160
161
162
163
164
165
166
167
# File 'lib/rspec/matchers/built_in/be.rb', line 160

def failure_message_when_negated
  message = "`expect(#{@actual.inspect}).not_to be #{@operator} #{@expected.inspect}`"
  if [:<, :>, :<=, :>=].include?(@operator)
    message + " not only FAILED, it is a bit confusing."
  else
    message
  end
end

- (Boolean) matches?(actual)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)


147
148
149
150
# File 'lib/rspec/matchers/built_in/be.rb', line 147

def matches?(actual)
  @actual = actual
  @actual.__send__ @operator, @expected
end