/var/www/vhosts/nabawater/vendor/behat/gherkin/tests/Behat/Gherkin
Edit: /var/www/vhosts/nabawater/vendor/behat/gherkin/tests/Behat/Gherkin/ParserTest.php (4560B)
parseEtalon($fixtureName . '.yml');
$features = $this->parseFixture($fixtureName . '.feature');
$this->assertInternalType('array', $features);
$this->assertEquals(1, count($features));
$fixture = $features[0];
$this->assertEquals($etalon, $fixture);
}
public function testParserResetsTagsBetweenFeatures()
{
$parser = $this->getGherkinParser();
$parser->parse(<<
parse(<<assertFalse($feature2->hasTags());
}
protected function getGherkinParser()
{
if (null === $this->gherkin) {
$keywords = new ArrayKeywords(array(
'en' => array(
'feature' => 'Feature',
'background' => 'Background',
'scenario' => 'Scenario',
'scenario_outline' => 'Scenario Outline',
'examples' => 'Examples',
'given' => 'Given',
'when' => 'When',
'then' => 'Then',
'and' => 'And',
'but' => 'But'
),
'ru' => array(
'feature' => 'Функционал',
'background' => 'Предыстория',
'scenario' => 'Сценарий',
'scenario_outline' => 'Структура сценария',
'examples' => 'Примеры',
'given' => 'Допустим',
'when' => 'То',
'then' => 'Если',
'and' => 'И',
'but' => 'Но'
),
'ja' => array (
'feature' => 'フィーチャ',
'background' => '背景',
'scenario' => 'シナリオ',
'scenario_outline' => 'シナリオアウトライン',
'examples' => '例|サンプル',
'given' => '前提<',
'when' => 'もし<',
'then' => 'ならば<',
'and' => 'かつ<',
'but' => 'しかし<'
)
));
$this->gherkin = new Parser(new Lexer($keywords));
}
return $this->gherkin;
}
protected function getYamlParser()
{
if (null === $this->yaml) {
$this->yaml = new YamlFileLoader();
}
return $this->yaml;
}
protected function parseFixture($fixture)
{
$file = __DIR__ . '/Fixtures/features/' . $fixture;
return array($this->getGherkinParser()->parse(file_get_contents($file), $file));
}
protected function parseEtalon($etalon)
{
$features = $this->getYamlParser()->load(__DIR__ . '/Fixtures/etalons/' . $etalon);
$feature = $features[0];
return new FeatureNode(
$feature->getTitle(),
$feature->getDescription(),
$feature->getTags(),
$feature->getBackground(),
$feature->getScenarios(),
$feature->getKeyword(),
$feature->getLanguage(),
__DIR__ . '/Fixtures/features/' . basename($etalon, '.yml') . '.feature',
$feature->getLine()
);
}
}