/**
  * @param PlanDefinition $definition
  * @return bool
  */
 public function supportsDefinition(PlanDefinition $definition)
 {
     //Support exactly what the child supports
     return $this->childCalculator->supportsDefinition($definition);
 }
 function let(PaymentPlanCalculatorInterface $delegatedFooCalculator)
 {
     $delegatedFooCalculator->supportsDefinition('Foo')->willReturn(true);
     $delegatedFooCalculator->supportsDefinition(Argument::not('Foo'))->willReturn(false);
     $this->registerCalculator($delegatedFooCalculator);
 }
 /**
  * @param PlanDefinition $definition
  * @return bool
  */
 public function supportsDefinition(PlanDefinition $definition)
 {
     return $this->childCalculator->supportsDefinition($definition);
 }