Module: RR::DoubleDefinitions::DoubleDefinitionCreator::StrategyExecutionMethods

Included in:
RR::DoubleDefinitions::DoubleDefinitionCreator
Defined in:
lib/rr/double_definitions/double_definition_creator.rb

Instance Method Summary collapse

Instance Method Details

#create(method_name, *args, &handler) ⇒ Object



137
138
139
140
141
142
143
144
145
# File 'lib/rr/double_definitions/double_definition_creator.rb', line 137

def create(method_name, *args, &handler)
  raise DoubleDefinitionCreatorError if no_subject?
  @method_name, @args, @handler = method_name, args, handler
  @definition = DoubleDefinition.new(self, subject)
  verification_strategy ? verification_strategy.call(definition, method_name, args, handler) : no_strategy_error
  implementation_strategy.call(definition, method_name, args, handler)
  scope_strategy.call(definition, method_name, args, handler)
  definition
end