Пример #1
0
 public function invoke(\PHPUnit_Framework_MockObject_Invocation $invocation)
 {
     if ($this->return instanceof \PHPUnit_Framework_MockObject_Stub) {
         return $this->return->invoke($invocation);
     }
     return $this->return;
 }
Пример #2
0
 /**
  * @param  PHPUnit_Framework_MockObject_Invocation $invocation
  * @return mixed
  */
 public function invoked(PHPUnit_Framework_MockObject_Invocation $invocation)
 {
     if ($this->invocationMatcher === null) {
         throw new PHPUnit_Framework_Exception('No invocation matcher is set');
     }
     if ($this->methodNameMatcher === null) {
         throw new PHPUnit_Framework_Exception('No method matcher is set');
     }
     if ($this->afterMatchBuilderId !== null) {
         $builder = $invocation->object->__phpunit_getInvocationMocker()->lookupId($this->afterMatchBuilderId);
         if (!$builder) {
             throw new PHPUnit_Framework_Exception(sprintf('No builder found for match builder identification <%s>', $this->afterMatchBuilderId));
         }
         $matcher = $builder->getMatcher();
         if ($matcher && $matcher->invocationMatcher->hasBeenInvoked()) {
             $this->afterMatchBuilderIsInvoked = true;
         }
     }
     $this->invocationMatcher->invoked($invocation);
     try {
         if ($this->parametersMatcher !== null && !$this->parametersMatcher->matches($invocation)) {
             $this->parametersMatcher->verify();
         }
     } catch (PHPUnit_Framework_ExpectationFailedException $e) {
         throw new PHPUnit_Framework_ExpectationFailedException(sprintf("Expectation failed for %s when %s\n%s", $this->methodNameMatcher->toString(), $this->invocationMatcher->toString(), $e->getMessage()), $e->getComparisonFailure());
     }
     if ($this->stub) {
         return $this->stub->invoke($invocation);
     }
     return;
 }