123456789_123456789_123456789_123456789_123456789_

Class: RSpec::Expectations::NegativeExpectationHandler Private

Do not use. This class is for internal use only.
Relationships & Source Files
Inherits: Object
Defined in: rspec-expectations/lib/rspec/expectations/handler.rb

Class Method Summary

Class Method Details

.does_not_match?(matcher, actual, &block) ⇒ Boolean

[ GitHub ]

  
# File 'rspec-expectations/lib/rspec/expectations/handler.rb', line 88

def self.does_not_match?(matcher, actual, &block)
  if matcher.respond_to?(:does_not_match?)
    matcher.does_not_match?(actual, &block)
  else
    !matcher.matches?(actual, &block)
  end
end

.handle_matcher(actual, initial_matcher, custom_message = nil, &block)

[ GitHub ]

  
# File 'rspec-expectations/lib/rspec/expectations/handler.rb', line 75

def self.handle_matcher(actual, initial_matcher, custom_message=nil, &block)
  ExpectationHelper.with_matcher(self, initial_matcher, custom_message) do |matcher|
    return ::RSpec::Matchers::BuiltIn::NegativeOperatorMatcher.new(actual) unless initial_matcher

    negated_match_result = does_not_match?(matcher, actual, &block)
    if custom_message && negated_match_result.respond_to?(:error_generator)
      negated_match_result.error_generator.opts[:message] = custom_message
    end

    negated_match_result || ExpectationHelper.handle_failure(matcher, custom_message, :failure_message_when_negated)
  end
end

.opposite_should_method

[ GitHub ]

  
# File 'rspec-expectations/lib/rspec/expectations/handler.rb', line 104

def self.opposite_should_method
  :should
end

.should_method

[ GitHub ]

  
# File 'rspec-expectations/lib/rspec/expectations/handler.rb', line 100

def self.should_method
  :should_not
end

.verb

[ GitHub ]

  
# File 'rspec-expectations/lib/rspec/expectations/handler.rb', line 96

def self.verb
  'is expected not to'
end