Class: RSpec::Mocks::TargetBase

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/mocks/targets.rb

Direct Known Subclasses

AllowanceTarget, AnyInstanceAllowanceTarget, AnyInstanceExpectationTarget, ExpectationTarget

Class Method Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (TargetBase) initialize(target)



5
6
7
# File 'lib/rspec/mocks/targets.rb', line 5

def initialize(target)
  @target = target
end

Class Method Details

+ (Object) delegate_not_to(matcher_method, options = {})



18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/rspec/mocks/targets.rb', line 18

def self.delegate_not_to(matcher_method, options = {})
  method_name = options.fetch(:from)
  define_method(method_name) do |matcher, &block|
    case matcher
    when Matchers::Receive
      define_matcher(matcher, matcher_method, &block)
    when Matchers::ReceiveMessages, Matchers::ReceiveMessageChain
      raise_negation_unsupported(method_name, matcher)
    else
      raise_unsupported_matcher(method_name, matcher)
    end
  end
end

+ (Object) delegate_to(matcher_method)



9
10
11
12
13
14
15
16
# File 'lib/rspec/mocks/targets.rb', line 9

def self.delegate_to(matcher_method)
  define_method(:to) do |matcher, &block|
    unless matcher_allowed?(matcher)
      raise_unsupported_matcher(:to, matcher)
    end
    define_matcher(matcher, matcher_method, &block)
  end
end

+ (Object) disallow_negation(method_name)



32
33
34
35
36
# File 'lib/rspec/mocks/targets.rb', line 32

def self.disallow_negation(method_name)
  define_method(method_name) do |matcher, *args|
    raise_negation_unsupported(method_name, matcher)
  end
end