You are here

public function PHPUnit_Framework_MockObject_Matcher_Parameters::verify in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php \PHPUnit_Framework_MockObject_Matcher_Parameters::verify()

Checks if the invocation $invocation matches the current rules. If it does the matcher will get the invoked() method called which should check if an expectation is met.

Parameters

PHPUnit_Framework_MockObject_Invocation $invocation: Object containing information on a mocked or stubbed method which was invoked.

Return value

bool

Throws

PHPUnit_Framework_ExpectationFailedException

Overrides PHPUnit_Framework_MockObject_Matcher_StatelessInvocation::verify

1 call to PHPUnit_Framework_MockObject_Matcher_Parameters::verify()
PHPUnit_Framework_MockObject_Matcher_Parameters::matches in vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php

File

vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php, line 88

Class

PHPUnit_Framework_MockObject_Matcher_Parameters
Invocation matcher which looks for specific parameters in the invocations.

Code

public function verify() {
  if ($this->invocation === null) {
    throw new PHPUnit_Framework_ExpectationFailedException('Mocked method does not exist.');
  }
  if (count($this->invocation->parameters) < count($this->parameters)) {
    $message = 'Parameter count for invocation %s is too low.';

    // The user called `->with($this->anything())`, but may have meant
    // `->withAnyParameters()`.
    //
    // @see https://github.com/sebastianbergmann/phpunit-mock-objects/issues/199
    if (count($this->parameters) === 1 && get_class($this->parameters[0]) === 'PHPUnit_Framework_Constraint_IsAnything') {
      $message .= "\nTo allow 0 or more parameters with any value, omit ->with() or use ->withAnyParameters() instead.";
    }
    throw new PHPUnit_Framework_ExpectationFailedException(sprintf($message, $this->invocation
      ->toString()));
  }
  foreach ($this->parameters as $i => $parameter) {
    $parameter
      ->evaluate($this->invocation->parameters[$i], sprintf('Parameter %s for invocation %s does not match expected ' . 'value.', $i, $this->invocation
      ->toString()));
  }
  return true;
}