X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fbehat%2Fgherkin%2Fsrc%2FBehat%2FGherkin%2FFilter%2FNarrativeFilter.php;fp=vendor%2Fbehat%2Fgherkin%2Fsrc%2FBehat%2FGherkin%2FFilter%2FNarrativeFilter.php;h=61126e5698ac5ba8d1ad2475e07c36ab120dec7b;hp=0000000000000000000000000000000000000000;hb=1270d9129ce8f27c9b28b10518e32132c58e0aca;hpb=c27c0f0cdaa3f354b1fe54a56ae7e854be6e3f68 diff --git a/vendor/behat/gherkin/src/Behat/Gherkin/Filter/NarrativeFilter.php b/vendor/behat/gherkin/src/Behat/Gherkin/Filter/NarrativeFilter.php new file mode 100644 index 000000000..61126e569 --- /dev/null +++ b/vendor/behat/gherkin/src/Behat/Gherkin/Filter/NarrativeFilter.php @@ -0,0 +1,61 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Behat\Gherkin\Filter; + +use Behat\Gherkin\Node\ScenarioInterface; +use Behat\Gherkin\Node\FeatureNode; + +/** + * Filters features by their narrative using regular expression. + * + * @author Konstantin Kudryashov + */ +class NarrativeFilter extends SimpleFilter +{ + /** + * @var string + */ + private $regex; + + /** + * Initializes filter. + * + * @param string $regex + */ + public function __construct($regex) + { + $this->regex = $regex; + } + + /** + * Checks if Feature matches specified filter. + * + * @param FeatureNode $feature Feature instance + * + * @return Boolean + */ + public function isFeatureMatch(FeatureNode $feature) + { + return 1 === preg_match($this->regex, $feature->getDescription()); + } + + /** + * Checks if scenario or outline matches specified filter. + * + * @param ScenarioInterface $scenario Scenario or Outline node instance + * + * @return Boolean + */ + public function isScenarioMatch(ScenarioInterface $scenario) + { + return false; + } +}