CachedArrayKeywordsTest   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

Changes 0
Metric Value
wmc 6
lcom 0
cbo 3
dl 0
loc 30
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A getKeywords() 0 4 1
A getKeywordsArray() 0 4 1
A getSteps() 0 17 4
1
<?php
2
3
namespace Tests\Behat\Gherkin\Keywords;
4
5
use Behat\Gherkin\Keywords\CachedArrayKeywords;
6
use Behat\Gherkin\Node\StepNode;
7
8
class CachedArrayKeywordsTest extends KeywordsTest
9
{
10
    protected function getKeywords()
11
    {
12
        return new CachedArrayKeywords(__DIR__ . '/../../../../i18n.php');
13
    }
14
15
    protected function getKeywordsArray()
16
    {
17
        return include(__DIR__ . '/../../../../i18n.php');
18
    }
19
20
    protected function getSteps($keywords, $text, &$line, $keywordType)
21
    {
22
        $steps = array();
23
        foreach (explode('|', $keywords) as $keyword) {
24
            if ('*' === $keyword) {
25
                continue;
26
            }
27
28
            if (false !== mb_strpos($keyword, '<')) {
29
                $keyword = mb_substr($keyword, 0, -1);
30
            }
31
32
            $steps[] = new StepNode($keyword, $text, array(), $line++, $keywordType);
33
        }
34
35
        return $steps;
36
    }
37
}
38