You are here

class NoCallsPrediction in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/phpspec/prophecy/src/Prophecy/Prediction/NoCallsPrediction.php \Prophecy\Prediction\NoCallsPrediction

No calls prediction.

@author Konstantin Kudryashov <ever.zet@gmail.com>

Hierarchy

Expanded class hierarchy of NoCallsPrediction

File

vendor/phpspec/prophecy/src/Prophecy/Prediction/NoCallsPrediction.php, line 25

Namespace

Prophecy\Prediction
View source
class NoCallsPrediction implements PredictionInterface {
  private $util;

  /**
   * Initializes prediction.
   *
   * @param null|StringUtil $util
   */
  public function __construct(StringUtil $util = null) {
    $this->util = $util ?: new StringUtil();
  }

  /**
   * Tests that there were no calls made.
   *
   * @param Call[]         $calls
   * @param ObjectProphecy $object
   * @param MethodProphecy $method
   *
   * @throws \Prophecy\Exception\Prediction\UnexpectedCallsException
   */
  public function check(array $calls, ObjectProphecy $object, MethodProphecy $method) {
    if (!count($calls)) {
      return;
    }
    $verb = count($calls) === 1 ? 'was' : 'were';
    throw new UnexpectedCallsException(sprintf("No calls expected that match:\n" . "  %s->%s(%s)\n" . "but %d %s made:\n%s", get_class($object
      ->reveal()), $method
      ->getMethodName(), $method
      ->getArgumentsWildcard(), count($calls), $verb, $this->util
      ->stringifyCalls($calls)), $method, $calls);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
NoCallsPrediction::$util private property
NoCallsPrediction::check public function Tests that there were no calls made. Overrides PredictionInterface::check
NoCallsPrediction::__construct public function Initializes prediction.