Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. Parameters.php

function Parameters::doVerify

Throws

ExpectationFailedException

2 calls to Parameters::doVerify()
Parameters::apply in vendor/phpunit/phpunit/src/Framework/MockObject/Runtime/Rule/Parameters.php
Parameters::verify in vendor/phpunit/phpunit/src/Framework/MockObject/Runtime/Rule/Parameters.php
Checks if the invocation $invocation matches the current rules. If it does the rule will get the invoked() method called which should check if an expectation is met.

File

vendor/phpunit/phpunit/src/Framework/MockObject/Runtime/Rule/Parameters.php, line 84

Class

Parameters
@no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit

Namespace

PHPUnit\Framework\MockObject\Rule

Code

private function doVerify() : bool {
    if (isset($this->parameterVerificationResult)) {
        return $this->guardAgainstDuplicateEvaluationOfParameterConstraints();
    }
    if ($this->invocation === null) {
        throw new 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 && $this->parameters[0]::class === IsAnything::class) {
            $message .= "\nTo allow 0 or more parameters with any value, omit ->with() or use ->withAnyParameters() instead.";
        }
        throw new ExpectationFailedException(sprintf($message, $this->invocation
            ->toString()));
    }
    foreach ($this->parameters as $i => $parameter) {
        if ($parameter instanceof Callback && $parameter->isVariadic()) {
            $other = $this->invocation
                ->parameters();
        }
        else {
            $other = $this->invocation
                ->parameters()[$i];
        }
        $parameter->evaluate($other, sprintf('Parameter %s for invocation %s does not match expected ' . 'value.', $i, $this->invocation
            ->toString()));
    }
    return true;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal