annotate vendor/behat/mink/src/Exception/ElementNotFoundException.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 /*
Chris@0 4 * This file is part of the Mink package.
Chris@0 5 * (c) Konstantin Kudryashov <ever.zet@gmail.com>
Chris@0 6 *
Chris@0 7 * For the full copyright and license information, please view the LICENSE
Chris@0 8 * file that was distributed with this source code.
Chris@0 9 */
Chris@0 10
Chris@0 11 namespace Behat\Mink\Exception;
Chris@0 12
Chris@0 13 use Behat\Mink\Driver\DriverInterface;
Chris@0 14 use Behat\Mink\Session;
Chris@0 15
Chris@0 16 /**
Chris@0 17 * Exception thrown when an expected element is not found.
Chris@0 18 *
Chris@0 19 * @author Konstantin Kudryashov <ever.zet@gmail.com>
Chris@0 20 */
Chris@0 21 class ElementNotFoundException extends ExpectationException
Chris@0 22 {
Chris@0 23 /**
Chris@0 24 * Initializes exception.
Chris@0 25 *
Chris@0 26 * @param DriverInterface|Session $driver driver instance
Chris@0 27 * @param string $type element type
Chris@0 28 * @param string $selector element selector type
Chris@0 29 * @param string $locator element locator
Chris@0 30 */
Chris@0 31 public function __construct($driver, $type = null, $selector = null, $locator = null)
Chris@0 32 {
Chris@0 33 $message = '';
Chris@0 34
Chris@0 35 if (null !== $type) {
Chris@0 36 $message .= ucfirst($type);
Chris@0 37 } else {
Chris@0 38 $message .= 'Tag';
Chris@0 39 }
Chris@0 40
Chris@0 41 if (null !== $locator) {
Chris@0 42 if (null === $selector || in_array($selector, array('css', 'xpath'))) {
Chris@0 43 $selector = 'matching '.($selector ?: 'locator');
Chris@0 44 } else {
Chris@0 45 $selector = 'with '.$selector;
Chris@0 46 }
Chris@0 47 $message .= ' '.$selector.' "'.$locator.'"';
Chris@0 48 }
Chris@0 49
Chris@0 50 $message .= ' not found.';
Chris@0 51
Chris@0 52 parent::__construct($message, $driver);
Chris@0 53 }
Chris@0 54 }