diff --git a/.gitattributes b/.gitattributes index 44829572..7184abb4 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,13 +1,14 @@ -/.github/ export-ignore -/bin/ export-ignore -/tests export-ignore -/.editorconfig export-ignore -/.gitattributes export-ignore -/.gitignore export-ignore -/CHANGELOG.md export-ignore -/CONTRIBUTING.md export-ignore -/package.xml.tpl export-ignore -/phpdoc.ini.dist export-ignore -/phpunit.dist.xml export-ignore -/phpstan.dist.neon export-ignore -/README.md export-ignore +/.github/ export-ignore +/bin/ export-ignore +/tests export-ignore +/.editorconfig export-ignore +/.gitattributes export-ignore +/.gitignore export-ignore +/CHANGELOG.md export-ignore +/CONTRIBUTING.md export-ignore +/package.xml.tpl export-ignore +/phpdoc.ini.dist export-ignore +/phpunit.dist.xml export-ignore +/phpstan.dist.neon export-ignore +/README.md export-ignore +phpstan-baseline.neon export-ignore diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2abf7013..cd4db160 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,6 +8,30 @@ on: types: [created] jobs: + check_composer: + name: Check composer.json + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: shivammathur/setup-php@v2 + with: + coverage: none + php-version: '8.3' + - run: composer validate --strict --no-check-lock + + static_analysis: + name: Static analysis + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: shivammathur/setup-php@v2 + with: + coverage: none + php-version: '8.3' + - name: Install dependencies + run: composer update + - run: ./vendor/bin/phpstan analyze + tests: runs-on: ubuntu-latest name: Build and test @@ -22,23 +46,18 @@ jobs: symfony-version: '^5.4' - php: 8.1 symfony-version: '^6.4' - steps: - uses: actions/checkout@v4 - - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: "${{ matrix.php }}" ini-file: "development" coverage: none - - name: Update Symfony version if: matrix.symfony-version != '' run: composer require --no-update "symfony/symfony:${{ matrix.symfony-version }}" - - name: Install dependencies run: composer update ${{ matrix.composer-flags }} - - name: Run tests (phpunit) run: ./vendor/bin/phpunit diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon new file mode 100644 index 00000000..58f80300 --- /dev/null +++ b/phpstan-baseline.neon @@ -0,0 +1,5833 @@ +parameters: + ignoreErrors: + - + message: '#^Method Behat\\Gherkin\\Cache\\CacheInterface\:\:write\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Cache/CacheInterface.php + + - + message: '#^Binary operation "\." between mixed and ''/'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: src/Behat/Gherkin/Cache/FileCache.php + + - + message: '#^Method Behat\\Gherkin\\Cache\\FileCache\:\:write\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Cache/FileCache.php + + - + message: '#^Parameter \#1 \$data of function unserialize expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Cache/FileCache.php + + - + message: '#^Property Behat\\Gherkin\\Cache\\FileCache\:\:\$path has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Cache/FileCache.php + + - + message: '#^Cannot access offset string on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 5 + path: src/Behat/Gherkin/Cache/MemoryCache.php + + - + message: '#^Method Behat\\Gherkin\\Cache\\MemoryCache\:\:read\(\) should return Behat\\Gherkin\\Node\\FeatureNode but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Cache/MemoryCache.php + + - + message: '#^Method Behat\\Gherkin\\Cache\\MemoryCache\:\:write\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Cache/MemoryCache.php + + - + message: '#^Property Behat\\Gherkin\\Cache\\MemoryCache\:\:\$features has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Cache/MemoryCache.php + + - + message: '#^Property Behat\\Gherkin\\Cache\\MemoryCache\:\:\$timestamps has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Cache/MemoryCache.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 2 + path: src/Behat/Gherkin/Filter/LineFilter.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects array\, array\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/LineFilter.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/LineFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\LineFilter\:\:\$filterLine has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/LineFilter.php + + - + message: '#^Loose comparison via "\=\=" is not allowed\.$#' + identifier: equal.notAllowed + count: 1 + path: src/Behat/Gherkin/Filter/LineRangeFilter.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects array\, array\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/LineRangeFilter.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, list\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/LineRangeFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\LineRangeFilter\:\:\$filterMaxLine has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/LineRangeFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\LineRangeFilter\:\:\$filterMinLine has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/LineRangeFilter.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Filter/NameFilter.php + + - + message: '#^Parameter \#1 \$pattern of function preg_match expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Filter/NameFilter.php + + - + message: '#^Parameter \#2 \$needle of function mb_strpos expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Filter/NameFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\NameFilter\:\:\$filterString has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/NameFilter.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Call to function array_filter\(\) requires parameter \#2 to be passed to avoid loose comparison semantics\.$#' + identifier: arrayFilter.strict + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Parameter \#1 \$haystack of function strpos expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Parameter \#1 \$path of function realpath expects string, string\|null given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Parameter \#2 \$needle of function strpos expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\PathsFilter\:\:\$filterPaths has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/PathsFilter.php + + - + message: '#^Parameter \#1 \$pattern of function preg_match expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/RoleFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\RoleFilter\:\:\$pattern has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/RoleFilter.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 2 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Only booleans are allowed in an if condition, int\|false given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Parameter \#1 \$string of function strlen expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Parameter \#1 \$tags of method Behat\\Gherkin\\Filter\\TagFilter\:\:isTagsMatchCondition\(\) expects array\, array\ given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, list\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Property Behat\\Gherkin\\Filter\\TagFilter\:\:\$filterString has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Filter/TagFilter.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:addFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:addLoader\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:load\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:resolveLoader\(\) should return Behat\\Gherkin\\Loader\\LoaderInterface but returns null\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:setBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Method Behat\\Gherkin\\Gherkin\:\:setFilters\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Only booleans are allowed in an elseif condition, int\|false given\.$#' + identifier: elseif.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Only booleans are allowed in an if condition, int\|false given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Parameter \#2 \$subject of function preg_match expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Strict comparison using \=\=\= between null and Behat\\Gherkin\\Loader\\LoaderInterface will always evaluate to false\.$#' + identifier: identical.alwaysFalse + count: 1 + path: src/Behat/Gherkin/Gherkin.php + + - + message: '#^Cannot access offset ''and'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''background'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''but'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''examples'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''feature'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''given'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''scenario'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''scenario_outline'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''then'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset ''when'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset mixed on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 13 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Cannot access offset string on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:__construct\(\) has parameter \$keywords with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getAndKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getBackgroundKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getButKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getExamplesKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getFeatureKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getGivenKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getOutlineKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getScenarioKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getStepKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getThenKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:getWhenKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:setLanguage\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Property Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:\$keywordString has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Property Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:\$keywords has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Property Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:\$language has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Keywords/ArrayKeywords.php + + - + message: '#^Parameter \#1 \$keywords of method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:__construct\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Keywords/CachedArrayKeywords.php + + - + message: '#^Only booleans are allowed in an if condition, string\|null given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Keywords/CucumberKeywords.php + + - + message: '#^Parameter \#1 \$input of static method Symfony\\Component\\Yaml\\Yaml\:\:parse\(\) expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Keywords/CucumberKeywords.php + + - + message: '#^Parameter \#1 \$keywords of method Behat\\Gherkin\\Keywords\\ArrayKeywords\:\:__construct\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Keywords/CucumberKeywords.php + + - + message: '#^Cannot call method getAndKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getBackgroundKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getButKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getExamplesKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getFeatureKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getGivenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getOutlineKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getScenarioKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getThenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method getWhenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Cannot call method setLanguage\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Foreach overwrites \$keyword with its value variable\.$#' + identifier: foreach.valueOverwrite + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dump\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpBackground\(\) has parameter \$excludeAsterisk with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpFeature\(\) has parameter \$excludeAsterisk with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpKeywords\(\) has parameter \$keywords with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpOutline\(\) has parameter \$excludeAsterisk with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpScenario\(\) has parameter \$excludeAsterisk with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpStep\(\) has parameter \$excludeAsterisk with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:setKeywordsDumperFunction\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$callback of function call_user_func expects callable\(\)\: mixed, mixed given\.$#' + identifier: argument.type + count: 12 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$keyword of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpBackground\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$keyword of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpFeature\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$keyword of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpOutline\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$keyword of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpScenario\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#1 \$keywords of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dumpStep\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 12 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 5 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Part \$keyword \(mixed\) of encapsed string cannot be cast to string\.$#' + identifier: encapsedStringPart.nonString + count: 2 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Part \$keywords \(mixed\) of encapsed string cannot be cast to string\.$#' + identifier: encapsedStringPart.nonString + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Property Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:\$keywords has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Property Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:\$keywordsDumper has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsDumper.php + + - + message: '#^Method Behat\\Gherkin\\Keywords\\KeywordsInterface\:\:setLanguage\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Keywords/KeywordsInterface.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Binary operation "\." between ''/\^\\\\s\{0,'' and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 2 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot access an offset on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot access offset \(float\|int\) on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot access offset string on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method getAndKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method getButKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method getGivenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method getThenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method getWhenKeywords\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot call method setLanguage\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot use \+\+ on mixed\.$#' + identifier: preInc.type + count: 2 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Cannot use \-\- on mixed\.$#' + identifier: preDec.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Construct empty\(\) is not allowed\. Use more strict comparison\.$#' + identifier: empty.notAllowed + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:analyse\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:consumeLine\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:consumeLineUntil\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:deferToken\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:deferToken\(\) has parameter \$token with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getAdvancedToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getDeferredToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getDeferredToken\(\) should return array\|null but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getKeywords\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getLanguage\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getNextToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getNextToken\(\) should return array but returns array\|null\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getStashedToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getStashedToken\(\) should return array\|null but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getStepKeywordType\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:getTrimmedLine\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:predictToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:predictToken\(\) should return array but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanBackground\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanComment\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanEOS\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanExamples\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanFeature\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanInput\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanInputForKeywords\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanLanguage\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanNewline\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanOutline\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanPyStringContent\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanPyStringOp\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanScenario\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanStep\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanTableRow\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanTags\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:scanText\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Method Behat\\Gherkin\\Lexer\:\:takeToken\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Only booleans are allowed in a negated boolean, int\|false given\.$#' + identifier: booleanNot.exprNotBoolean + count: 4 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Only booleans are allowed in an if condition, int\|false given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#1 \$array of function array_shift expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#1 \$string of function ltrim expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#1 \$string of function mb_strlen expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#1 \$string of function trim expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$array of function array_map expects array, list\\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$haystack of function in_array expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 6 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$subject of function preg_match expects string, mixed given\.$#' + identifier: argument.type + count: 4 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$value of method Behat\\Gherkin\\Lexer\:\:takeToken\(\) expects string\|null, int\<0, max\> given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#2 \$value of method Behat\\Gherkin\\Lexer\:\:takeToken\(\) expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Parameter \#3 \$subject of function preg_replace expects array\\|string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$allowMultilineArguments has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$allowSteps has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$deferredObjects has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$deferredObjectsCount has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$eos has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$featureStarted has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$inPyString has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$keywords has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$keywordsCache has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$language has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$line has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$lineNumber has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$lines has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$linesCount has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$pyStringDelimiter has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$pyStringSwallow has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$stashedToken has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$stepKeywordTypesCache has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Property Behat\\Gherkin\\Lexer\:\:\$trimmedLine has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Short ternary operator is not allowed\. Use null coalesce operator if applicable or consider using long ternary\.$#' + identifier: ternary.shortNotAllowed + count: 17 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Variable method call on mixed\.$#' + identifier: method.dynamicName + count: 1 + path: src/Behat/Gherkin/Lexer.php + + - + message: '#^Binary operation "\." between mixed and ''/''\|''\\\\'' results in an error\.$#' + identifier: binaryOp.invalid + count: 4 + path: src/Behat/Gherkin/Loader/AbstractFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\AbstractFileLoader\:\:findAbsolutePath\(\) should return string but returns false\.$#' + identifier: return.type + count: 2 + path: src/Behat/Gherkin/Loader/AbstractFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\AbstractFileLoader\:\:findAbsolutePath\(\) should return string but returns string\|false\.$#' + identifier: return.type + count: 2 + path: src/Behat/Gherkin/Loader/AbstractFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\AbstractFileLoader\:\:setBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Loader/AbstractFileLoader.php + + - + message: '#^Property Behat\\Gherkin\\Loader\\AbstractFileLoader\:\:\$basePath has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Loader/AbstractFileLoader.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 2 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Binary operation "\+" between mixed and 1 results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access an offset on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''feature'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''features'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''keyword'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''rows'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''table'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''tags'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset ''type'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Cannot access offset int\<0, max\> on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:examplesAreInArray\(\) has parameter \$exHash with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadBackgroundHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadFeatureHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadOutlineHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadPyStringHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadScenarioHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadStepHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadStepsHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadTableHash\(\) has parameter \$hash with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:processExamplesArray\(\) has parameter \$exHash with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:processExamplesArray\(\) has parameter \$examples with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:processExamplesArray\(\) has parameter \$examplesKeyword with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:processExamplesArray\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\ArrayLoader\:\:processExamplesArray\(\) should return array but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadBackgroundHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadFeatureHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadOutlineHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadPyStringHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadScenarioHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadStepHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadStepsHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$hash of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadTableHash\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$keyword of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$table of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$description of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$line of class Behat\\Gherkin\\Node\\PyStringNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$line of method Behat\\Gherkin\\Loader\\ArrayLoader\:\:loadFeatureHash\(\) expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$tags of class Behat\\Gherkin\\Node\\OutlineNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$tags of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#2 \$text of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#3 \$keyword of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\FeatureNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#5 \$keywordType of class Behat\\Gherkin\\Node\\StepNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#6 \$line of class Behat\\Gherkin\\Node\\OutlineNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/ArrayLoader.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''background'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 5 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''cells'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''description'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''examples'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''feature'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''keyword'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 5 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''language'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''line'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 7 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''location'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 6 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''name'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 4 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''scenario'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 13 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''steps'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''tableBody'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''tableHeader'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot access offset ''value'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Loose comparison via "\=\=" is not allowed\.$#' + identifier: equal.notAllowed + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getBackground\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getFeature\(\) has parameter \$filePath with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getFeature\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getScenarios\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getSteps\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getTables\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getTags\(\) has parameter \$json with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$array of function array_filter expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$callback of function array_map expects \(callable\(mixed\)\: mixed\)\|null, Closure\(array\)\: \(list\\|string\|null\) given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$callback of function array_map expects \(callable\(mixed\)\: mixed\)\|null, Closure\(array\)\: Behat\\Gherkin\\Node\\StepNode given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$filename of function file expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getBackground\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getFeature\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getScenarios\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getSteps\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getTables\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$json of static method Behat\\Gherkin\\Loader\\CucumberNDJsonAstLoader\:\:getTags\(\) expects array, mixed given\.$#' + identifier: argument.type + count: 4 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$string of function trim expects string, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#2 \$array of function array_map expects array, list\\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#2 \$array of function array_map expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#2 \$text of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#3 \$keyword of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#3 \$subject of function preg_replace expects array\\|string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#6 \$line of class Behat\\Gherkin\\Node\\OutlineNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/CucumberNDJsonAstLoader.php + + - + message: '#^Cannot call method load\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Cannot call method resolveLoader\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Casting to string something that''s already string\.$#' + identifier: cast.useless + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Foreach overwrites \$path with its value variable\.$#' + identifier: foreach.valueOverwrite + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\DirectoryLoader\:\:load\(\) should return array\ but returns array\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Parameter \#1 \$callback of function array_map expects \(callable\(mixed\)\: mixed\)\|null, ''strval'' given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Parameter \#1 \$path \(string\) of method Behat\\Gherkin\\Loader\\DirectoryLoader\:\:load\(\) should be contravariant with parameter \$resource \(mixed\) of method Behat\\Gherkin\\Loader\\LoaderInterface\:\:load\(\)$#' + identifier: method.childParameterType + count: 3 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Parameter \#2 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Property Behat\\Gherkin\\Loader\\DirectoryLoader\:\:\$gherkin has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Loader/DirectoryLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\FileLoaderInterface\:\:setBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Loader/FileLoaderInterface.php + + - + message: '#^Cannot call method isFresh\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Cannot call method parse\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Cannot call method read\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Cannot call method write\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:load\(\) should return array\ but returns list\\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:parseFeature\(\) should return Behat\\Gherkin\\Node\\FeatureNode but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Method Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:setCache\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Parameter \#1 \$path \(string\) of method Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:load\(\) should be contravariant with parameter \$resource \(mixed\) of method Behat\\Gherkin\\Loader\\LoaderInterface\:\:load\(\)$#' + identifier: method.childParameterType + count: 3 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Property Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:\$cache has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Property Behat\\Gherkin\\Loader\\GherkinFileLoader\:\:\$parser has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Loader/GherkinFileLoader.php + + - + message: '#^Cannot call method load\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Parameter \#1 \$callback of function array_map expects \(callable\(mixed\)\: mixed\)\|null, Closure\(Behat\\Gherkin\\Node\\FeatureNode\)\: Behat\\Gherkin\\Node\\FeatureNode given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Parameter \#1 \$input of static method Symfony\\Component\\Yaml\\Yaml\:\:parse\(\) expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Parameter \#1 \$path \(string\) of method Behat\\Gherkin\\Loader\\YamlFileLoader\:\:load\(\) should be contravariant with parameter \$resource \(mixed\) of method Behat\\Gherkin\\Loader\\LoaderInterface\:\:load\(\)$#' + identifier: method.childParameterType + count: 3 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Parameter \#2 \$array of function array_map expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Property Behat\\Gherkin\\Loader\\YamlFileLoader\:\:\$loader has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Loader/YamlFileLoader.php + + - + message: '#^Property Behat\\Gherkin\\Node\\BackgroundNode\:\:\$title \(string\) does not accept string\|null\.$#' + identifier: assign.propertyType + count: 1 + path: src/Behat/Gherkin/Node/BackgroundNode.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 1 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Cannot access offset int\|string on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Parameter \#1 \$array of function array_keys expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Parameter \#1 \$text of method Behat\\Gherkin\\Node\\ExampleNode\:\:replaceTextTokens\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\ExampleNode\:\:\$outlineTitle \(string\) does not accept string\|null\.$#' + identifier: assign.propertyType + count: 1 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Short ternary operator is not allowed\. Use null coalesce operator if applicable or consider using long ternary\.$#' + identifier: ternary.shortNotAllowed + count: 1 + path: src/Behat/Gherkin/Node/ExampleNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\ExampleTableNode\:\:__construct\(\) has parameter \$table with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/ExampleTableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\ExampleTableNode\:\:getTags\(\) has invalid return type string\.$#' + identifier: class.notFound + count: 1 + path: src/Behat/Gherkin/Node/ExampleTableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\ExampleTableNode\:\:getTags\(\) should return array\ but returns array\\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Node/ExampleTableNode.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 1 + path: src/Behat/Gherkin/Node/FeatureNode.php + + - + message: '#^Construct empty\(\) is not allowed\. Use more strict comparison\.$#' + identifier: empty.notAllowed + count: 2 + path: src/Behat/Gherkin/Node/FeatureNode.php + + - + message: '#^Only booleans are allowed in &&, int given on the right side\.$#' + identifier: booleanAnd.rightNotBoolean + count: 1 + path: src/Behat/Gherkin/Node/FeatureNode.php + + - + message: '#^Only booleans are allowed in \|\|, int given on the left side\.$#' + identifier: booleanOr.leftNotBoolean + count: 1 + path: src/Behat/Gherkin/Node/FeatureNode.php + + - + message: '#^Strict comparison using \=\=\= between null and string will always evaluate to false\.$#' + identifier: identical.alwaysFalse + count: 1 + path: src/Behat/Gherkin/Node/FeatureNode.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Call to function is_array\(\) with Behat\\Gherkin\\Node\\ExampleTableNode&iterable\ will always evaluate to false\.$#' + identifier: function.impossibleType + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Cannot access offset 0 on Behat\\Gherkin\\Node\\ExampleTableNode&iterable\\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Cannot access offset int\<1, max\> on Behat\\Gherkin\\Node\\ExampleTableNode&iterable\\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Cannot call method getKeyword\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Cannot call method getTable\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\OutlineNode\:\:getExampleTables\(\) should return array\ but returns Behat\\Gherkin\\Node\\ExampleTableNode&iterable\\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Parameter \#1 \$node of method Behat\\Gherkin\\Node\\TableNode\:\:mergeRowsFromTable\(\) expects Behat\\Gherkin\\Node\\TableNode, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, Behat\\Gherkin\\Node\\ExampleTableNode&iterable\ given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Parameter \#2 \$tags of class Behat\\Gherkin\\Node\\ExampleNode constructor expects array\, array\ given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Parameter \#4 \$tokens of class Behat\\Gherkin\\Node\\ExampleNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\OutlineNode\:\:\$tables \(Behat\\Gherkin\\Node\\ExampleTableNode&iterable\\) does not accept array\\>\.$#' + identifier: assign.propertyType + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\OutlineNode\:\:\$title \(string\) does not accept string\|null\.$#' + identifier: assign.propertyType + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Short ternary operator is not allowed\. Use null coalesce operator if applicable or consider using long ternary\.$#' + identifier: ternary.shortNotAllowed + count: 1 + path: src/Behat/Gherkin/Node/OutlineNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\PyStringNode\:\:__construct\(\) has parameter \$strings with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/PyStringNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\PyStringNode\:\:getStrings\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/PyStringNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\PyStringNode\:\:\$strings type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/PyStringNode.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 1 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\ScenarioNode\:\:__construct\(\) has parameter \$tags with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\ScenarioNode\:\:getTags\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\ScenarioNode\:\:\$tags type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\ScenarioNode\:\:\$title \(string\) does not accept string\|null\.$#' + identifier: assign.propertyType + count: 1 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Return type \(array\) of method Behat\\Gherkin\\Node\\ScenarioNode\:\:getTags\(\) should be covariant with return type \(array\\) of method Behat\\Gherkin\\Node\\TaggedNodeInterface\:\:getTags\(\)$#' + identifier: method.childReturnType + count: 2 + path: src/Behat/Gherkin/Node/ScenarioNode.php + + - + message: '#^Short ternary operator is not allowed\. Use null coalesce operator if applicable or consider using long ternary\.$#' + identifier: ternary.shortNotAllowed + count: 1 + path: src/Behat/Gherkin/Node/StepNode.php + + - + message: '#^Binary operation "\+" between mixed and 2 results in an error\.$#' + identifier: binaryOp.invalid + count: 2 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Binary operation "\." between '' '' and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 2 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Cannot access offset \(int\|string\) on int\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Cannot access offset int on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Class Behat\\Gherkin\\Node\\TableNode implements generic interface IteratorAggregate but does not specify its types\: TKey, TValue$#' + identifier: missingType.generics + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Loose comparison via "\=\=" is not allowed\.$#' + identifier: equal.notAllowed + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:__construct\(\) has parameter \$table with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:fromList\(\) has parameter \$list with no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getColumn\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getColumnsHash\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getHash\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getLines\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getRow\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getRow\(\) should return array but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getRows\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getRowsHash\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:getTable\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Method Behat\\Gherkin\\Node\\TableNode\:\:mergeRowsFromTable\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Parameter \#1 \$array of function array_shift expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Parameter \#1 \$keys of function array_combine expects an array of values castable to string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Parameter \#1 \$keys of function array_combine expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Parameter \#1 \$string of function mb_strlen expects string, bool\|float\|int\|string given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Parameter \#2 \$values of function array_combine expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\TableNode\:\:\$maxLineLength \(int\) does not accept default value of type array\.$#' + identifier: property.defaultValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\TableNode\:\:\$maxLineLength \(int\) does not accept mixed\.$#' + identifier: assign.propertyType + count: 2 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Property Behat\\Gherkin\\Node\\TableNode\:\:\$table type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Node/TableNode.php + + - + message: '#^Binary operation "\+" between mixed and 2 results in an error\.$#' + identifier: binaryOp.invalid + count: 4 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Binary operation "\." between '' in file '' and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Binary operation "\." between '' in file\: '' and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 12 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\BackgroundNode\|Behat\\Gherkin\\Node\\OutlineNode\|Behat\\Gherkin\\Node\\ScenarioNode\|Behat\\Gherkin\\Node\\StepNode\|Behat\\Gherkin\\Node\\TableNode\:\:getKeyword\(\)\.$#' + identifier: method.notFound + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Call to function in_array\(\) requires parameter \#3 to be set\.$#' + identifier: function.strict + count: 8 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot access an offset on Behat\\Gherkin\\Node\\ExampleTableNode\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot access offset ''line'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot access offset ''type'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot access offset int\<\-1, max\> on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot call method analyse\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot call method getAdvancedToken\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot call method getLanguage\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot call method predictToken\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Cannot call method skipPredictedToken\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Construct empty\(\) is not allowed\. Use more strict comparison\.$#' + identifier: empty.notAllowed + count: 3 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Instanceof between Behat\\Gherkin\\Node\\BackgroundNode\|Behat\\Gherkin\\Node\\FeatureNode\|Behat\\Gherkin\\Node\\OutlineNode\|Behat\\Gherkin\\Node\\ScenarioNode\|Behat\\Gherkin\\Node\\StepNode\|Behat\\Gherkin\\Node\\TableNode\|string and Behat\\Gherkin\\Node\\PyStringNode will always evaluate to false\.$#' + identifier: instanceof.alwaysFalse + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Instanceof between Behat\\Gherkin\\Node\\BackgroundNode\|Behat\\Gherkin\\Node\\FeatureNode\|Behat\\Gherkin\\Node\\OutlineNode\|Behat\\Gherkin\\Node\\ScenarioNode\|Behat\\Gherkin\\Node\\TableNode and Behat\\Gherkin\\Node\\StepNode will always evaluate to false\.$#' + identifier: instanceof.alwaysFalse + count: 3 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Instanceof between Behat\\Gherkin\\Node\\BackgroundNode\|Behat\\Gherkin\\Node\\FeatureNode\|Behat\\Gherkin\\Node\\StepNode\|Behat\\Gherkin\\Node\\TableNode and Behat\\Gherkin\\Node\\ScenarioNode will always evaluate to false\.$#' + identifier: instanceof.alwaysFalse + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:acceptTokenType\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:acceptTokenType\(\) should return array\|null but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:expectTokenType\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:expectTokenType\(\) should return array but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:guardTags\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:parseExamples\(\) should return Behat\\Gherkin\\Node\\ExampleTableNode but return statement is missing\.$#' + identifier: return.missing + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:parseTable\(\) should return Behat\\Gherkin\\Node\\TableNode but return statement is missing\.$#' + identifier: return.missing + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:parseTableRows\(\) should return array\\> but returns array\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:parseText\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:popTags\(\) return type has no value type specified in iterable type array\.$#' + identifier: missingType.iterableValue + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:popTags\(\) should return array but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Method Behat\\Gherkin\\Parser\:\:predictTokenType\(\) should return string but returns mixed\.$#' + identifier: return.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in &&, Behat\\Gherkin\\Node\\FeatureNode\|null given on the left side\.$#' + identifier: booleanAnd.leftNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in a negated boolean, Behat\\Gherkin\\Node\\BackgroundNode\|null given\.$#' + identifier: booleanNot.exprNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in a negated boolean, Behat\\Gherkin\\Node\\FeatureNode\|null given\.$#' + identifier: booleanNot.exprNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in a negated boolean, int\<0, max\> given\.$#' + identifier: booleanNot.exprNotBoolean + count: 3 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in a ternary operator condition, string\|null given\.$#' + identifier: ternary.condNotBoolean + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in an if condition, Behat\\Gherkin\\Node\\StepNode\|false given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in an if condition, int\<0, max\> given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Only booleans are allowed in an if condition, int\|false given\.$#' + identifier: if.condNotBoolean + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^PHPDoc tag @var with type Behat\\Gherkin\\Node\\ExampleTableNode is not subtype of native type array\{\}\.$#' + identifier: varTag.nativeType + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$array of function array_pop expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$array of function array_push expects array, mixed given\.$#' + identifier: argument.type + count: 4 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$keyword of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$string of function trim expects string, mixed given\.$#' + identifier: argument.type + count: 5 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$tags of method Behat\\Gherkin\\Parser\:\:guardTags\(\) expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#1 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#2 \$line of class Behat\\Gherkin\\Node\\PyStringNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#2 \$tags of class Behat\\Gherkin\\Node\\OutlineNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#2 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#2 \.\.\.\$values of function sprintf expects bool\|float\|int\|string\|null, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#3 \$keyword of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\FeatureNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#3 \.\.\.\$values of function sprintf expects bool\|float\|int\|string\|null, mixed given\.$#' + identifier: argument.type + count: 2 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#4 \.\.\.\$values of function sprintf expects bool\|float\|int\|string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#5 \$keywordType of class Behat\\Gherkin\\Node\\StepNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#6 \$line of class Behat\\Gherkin\\Node\\OutlineNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#8 \$file of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$file has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$input has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$languageSpecifierLine has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$lexer has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$passedNodesStack has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Property Behat\\Gherkin\\Parser\:\:\$tags has no type specified\.$#' + identifier: missingType.property + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Short ternary operator is not allowed\. Use null coalesce operator if applicable or consider using long ternary\.$#' + identifier: ternary.shortNotAllowed + count: 5 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Strict comparison using \=\=\= between null and Behat\\Gherkin\\Node\\BackgroundNode\|Behat\\Gherkin\\Node\\FeatureNode\|Behat\\Gherkin\\Node\\OutlineNode\|Behat\\Gherkin\\Node\\ScenarioNode\|Behat\\Gherkin\\Node\\StepNode\|Behat\\Gherkin\\Node\\TableNode\|string will always evaluate to false\.$#' + identifier: identical.alwaysFalse + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Variable \$examples in empty\(\) always exists and is not falsy\.$#' + identifier: empty.variable + count: 1 + path: src/Behat/Gherkin/Parser.php + + - + message: '#^Argument of an invalid type list\\|false supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Binary operation "\." between mixed and ''/\*\.feature\.cache'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Binary operation "\." between mixed and ''/v'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Cannot call method isFresh\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Cannot call method read\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Cannot call method write\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Casting to string something that''s already string\.$#' + identifier: cast.useless + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Cache\\FileCacheTest\:\:\$cache has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Cache\\FileCacheTest\:\:\$path has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cache/FileCacheTest.php + + - + message: '#^Cannot call method isFresh\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Cannot call method read\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Cannot call method write\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Cache\\MemoryCacheTest\:\:testCacheAndRead\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Cache\\MemoryCacheTest\:\:testIsFreshOnFreshFile\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Cache\\MemoryCacheTest\:\:testIsFreshOnOutdated\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Cache\\MemoryCacheTest\:\:testIsFreshWhenThereIsNoFile\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Cache\\MemoryCacheTest\:\:\$cache has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cache/MemoryCacheTest.php + + - + message: '#^Binary operation "\." between literal\-string&non\-falsy\-string and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot access offset string on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot call method getExtension\(\) on SplFileInfo\|string\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot call method getFilename\(\) on SplFileInfo\|string\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot call method getScenarios\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot call method isFile\(\) on SplFileInfo\|string\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:markTestIncomplete\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Loose comparison via "\=\=" is not allowed\.$#' + identifier: equal.notAllowed + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:badCucumberFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:expectDeprecationErrorMatches\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:expectDeprecationErrorMatches\(\) has parameter \$message with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:getCucumberFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:getCucumberFeatures\(\) has parameter \$folder with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:goodCucumberFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:normaliseFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:normaliseFeature\(\) has parameter \$featureNode with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:setPrivateProperty\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:setPrivateProperty\(\) has parameter \$object with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:setPrivateProperty\(\) has parameter \$propertyName with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:setPrivateProperty\(\) has parameter \$value with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:testBadFeaturesDoNotParse\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Method Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:testFeaturesParseTheSameAsCucumber\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Only booleans are allowed in a ternary operator condition, array\ given\.$#' + identifier: ternary.condNotBoolean + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$callback of function array_map expects \(callable\(mixed\)\: mixed\)\|null, Closure\(Behat\\Gherkin\\Node\\ScenarioInterface\)\: Behat\\Gherkin\\Node\\ScenarioInterface given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$input of method Behat\\Gherkin\\Parser\:\:parse\(\) expects string, string\|false given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$keywords of class Behat\\Gherkin\\Keywords\\ArrayKeywords constructor expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$message of method PHPUnit\\Framework\\Assert\:\:markTestIncomplete\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$name of method ReflectionClass\\:\:getProperty\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$objectOrClass of class ReflectionClass constructor expects class\-string\\|T of object, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$objectOrValue of method ReflectionProperty\:\:setValue\(\) expects object\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#1 \$regularExpression of method PHPUnit\\Framework\\TestCase\:\:expectExceptionMessageMatches\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#2 \$array of function array_map expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Parameter \#3 \$message of method PHPUnit\\Framework\\Assert\:\:assertEquals\(\) expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Property Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:\$deprecatedInsteadOfParseError has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Property Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:\$notParsingCorrectly has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Property Behat\\Gherkin\\Cucumber\\CompatibilityTest\:\:\$parsedButShouldNotBe has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Cucumber/CompatibilityTest.php + + - + message: '#^Cannot call method parse\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Filter/AbstractFilterTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\AbstractFilterTestBase\:\:getGherkinFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/AbstractFilterTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\AbstractFilterTestBase\:\:getParsedFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/AbstractFilterTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\AbstractFilterTestBase\:\:getParser\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/AbstractFilterTestBase.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ScenarioInterface\:\:getExampleTable\(\)\.$#' + identifier: method.notFound + count: 2 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ScenarioInterface\:\:getExampleTables\(\)\.$#' + identifier: method.notFound + count: 2 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 6 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Cannot call method getRows\(\) on mixed\.$#' + identifier: method.nonObject + count: 6 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Cannot call method getTags\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 11 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 5 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 9 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 3 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineFilterTest\:\:testFilterFeatureOutline\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineFilterTest\:\:testFilterFeatureScenario\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineFilterTest\:\:testIsScenarioMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#1 \$feature of method Behat\\Gherkin\\Filter\\LineFilter\:\:filterFeature\(\) expects Behat\\Gherkin\\Node\\FeatureNode, mixed given\.$#' + identifier: argument.type + count: 7 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#1 \$filterLine of class Behat\\Gherkin\\Filter\\LineFilter constructor expects string, int given\.$#' + identifier: argument.type + count: 15 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#2 \$haystack of method PHPUnit\\Framework\\Assert\:\:assertCount\(\) expects Countable\|iterable, mixed given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Variable \$scenarios in PHPDoc tag @var does not exist\.$#' + identifier: varTag.variableNotFound + count: 1 + path: tests/Behat/Gherkin/Filter/LineFilterTest.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ScenarioInterface\:\:getExampleTables\(\)\.$#' + identifier: method.notFound + count: 3 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 9 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Cannot access offset 1 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Cannot call method getRows\(\) on mixed\.$#' + identifier: method.nonObject + count: 8 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Cannot call method getTags\(\) on mixed\.$#' + identifier: method.nonObject + count: 4 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 11 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 8 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 11 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:featureLineRangeProvider\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:scenarioLineRangeProvider\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testFilterFeatureOutline\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testFilterFeatureScenario\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsFeatureMatchFilter\(\) has parameter \$expected with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsFeatureMatchFilter\(\) has parameter \$filterMaxLine with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsFeatureMatchFilter\(\) has parameter \$filterMinLine with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsScenarioMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsScenarioMatchFilter\(\) has parameter \$expectedNumberOfMatches with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsScenarioMatchFilter\(\) has parameter \$filterMaxLine with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\LineRangeFilterTest\:\:testIsScenarioMatchFilter\(\) has parameter \$filterMinLine with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#1 \$feature of method Behat\\Gherkin\\Filter\\LineRangeFilter\:\:filterFeature\(\) expects Behat\\Gherkin\\Node\\FeatureNode, mixed given\.$#' + identifier: argument.type + count: 7 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#1 \$filterMinLine of class Behat\\Gherkin\\Filter\\LineRangeFilter constructor expects string, int given\.$#' + identifier: argument.type + count: 7 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#1 \$filterMinLine of class Behat\\Gherkin\\Filter\\LineRangeFilter constructor expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#2 \$filterMaxLine of class Behat\\Gherkin\\Filter\\LineRangeFilter constructor expects string, int given\.$#' + identifier: argument.type + count: 7 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#2 \$filterMaxLine of class Behat\\Gherkin\\Filter\\LineRangeFilter constructor expects string, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#2 \$haystack of method PHPUnit\\Framework\\Assert\:\:assertCount\(\) expects Countable\|iterable, mixed given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array\ given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Variable \$scenarios in PHPDoc tag @var does not exist\.$#' + identifier: varTag.variableNotFound + count: 1 + path: tests/Behat/Gherkin/Filter/LineRangeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 5 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 9 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\NameFilterTest\:\:testFilterFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\NameFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\NameFilterTest\:\:testIsScenarioMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 6 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 9 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 9 + path: tests/Behat/Gherkin/Filter/NameFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 3 + path: tests/Behat/Gherkin/Filter/NarrativeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Filter/NarrativeFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\NarrativeFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/NarrativeFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/NarrativeFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Filter/NarrativeFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 5 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 6 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\PathsFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\PathsFilterTest\:\:testItDoesNotMatchIfFileWithSameNameButNotPathExistsInFolder\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\PathsFilterTest\:\:testItDoesNotMatchPartialPaths\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Filter/PathsFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 7 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 8 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\RoleFilterTest\:\:testFeatureRolePrefixedWithAn\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\RoleFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Filter/RoleFilterTest.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ScenarioInterface\:\:getExampleTables\(\)\.$#' + identifier: method.notFound + count: 7 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 15 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 14 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 20 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:expectDeprecationError\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testFilterFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testFilterFeatureWithTaggedExamples\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testFilterWithWhitespaceIsDeprecated\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testIsFeatureMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testIsScenarioMatchFilter\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Filter\\TagFilterTest\:\:testTagFilterThatIsAllWhitespaceIsIgnored\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#2 \$keyword of class Behat\\Gherkin\\Node\\ExampleTableNode constructor expects string, null given\.$#' + identifier: argument.type + count: 8 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 15 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array\ given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, null given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 19 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 19 + path: tests/Behat/Gherkin/Filter/TagFilterTest.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Cannot call method expects\(\) on mixed\.$#' + identifier: method.nonObject + count: 16 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Cannot call method getScenarios\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Cannot call method method\(\) on mixed\.$#' + identifier: method.nonObject + count: 16 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Cannot call method will\(\) on mixed\.$#' + identifier: method.nonObject + count: 14 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Cannot call method with\(\) on mixed\.$#' + identifier: method.nonObject + count: 14 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 5 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:identicalTo\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 6 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:never\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:once\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 14 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:returnValue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 14 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:getCustomFilterMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:getLoaderMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:getNameFilterMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:getTagFilterMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:testLoader\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:testLoaderFiltersFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:testNotFoundLoader\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:testSetBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\GherkinTest\:\:testSetFiltersOverridesAllFilters\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#1 \$filter of method Behat\\Gherkin\\Gherkin\:\:addFilter\(\) expects Behat\\Gherkin\\Filter\\FeatureFilterInterface, mixed given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#1 \$loader of method Behat\\Gherkin\\Gherkin\:\:addLoader\(\) expects Behat\\Gherkin\\Loader\\LoaderInterface, mixed given\.$#' + identifier: argument.type + count: 5 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#2 \$filters of method Behat\\Gherkin\\Gherkin\:\:load\(\) expects array\, array\ given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#4 \$keyword of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects string, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#5 \$line of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects int, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, null given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/GherkinTest.php + + - + message: '#^Argument of an invalid type array\|string supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Binary operation "\+\=" between mixed and 1 results in an error\.$#' + identifier: assignOp.invalid + count: 3 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Binary operation "\." between literal\-string&non\-falsy\-string and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Binary operation "\." between mixed and ''_'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''and'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''background'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''but'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''en\-old'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''examples'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''feature'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''given'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 3 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''ne'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''scenario'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''scenario_outline'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''then'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''uz'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot access offset ''when'' on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getKeywords\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getKeywordsArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getSteps\(\) has parameter \$keywordType with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getSteps\(\) has parameter \$keywords with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getSteps\(\) has parameter \$line with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:getSteps\(\) has parameter \$text with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:testTranslation\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\AbstractKeywordsTestBase\:\:translationTestDataProvider\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#1 \$keywords of class Behat\\Gherkin\\Keywords\\KeywordsDumper constructor expects Behat\\Gherkin\\Keywords\\KeywordsInterface, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#1 \$keywords of class Behat\\Gherkin\\Lexer constructor expects Behat\\Gherkin\\Keywords\\KeywordsInterface, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#1 \$language of method Behat\\Gherkin\\Keywords\\KeywordsDumper\:\:dump\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#1 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#2 \$steps of class Behat\\Gherkin\\Node\\BackgroundNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 5 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#2 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 3 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#3 \$steps of class Behat\\Gherkin\\Node\\OutlineNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#3 \$steps of class Behat\\Gherkin\\Node\\ScenarioNode constructor expects array\, array given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#3 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#4 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#5 \.\.\.\$arrays of function array_merge expects array, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/AbstractKeywordsTestBase.php + + - + message: '#^Cannot use \+\+ on mixed\.$#' + identifier: postInc.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getKeywords\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getKeywordsArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getSteps\(\) has parameter \$keywordType with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getSteps\(\) has parameter \$keywords with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getSteps\(\) has parameter \$line with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\ArrayKeywordsTest\:\:getSteps\(\) has parameter \$text with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Parameter \#1 \$keywords of class Behat\\Gherkin\\Keywords\\ArrayKeywords constructor expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Parameter \#2 \$text of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Parameter \#5 \$keywordType of class Behat\\Gherkin\\Node\\StepNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/ArrayKeywordsTest.php + + - + message: '#^Cannot use \+\+ on mixed\.$#' + identifier: postInc.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getKeywords\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getKeywordsArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getSteps\(\) has parameter \$keywordType with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getSteps\(\) has parameter \$keywords with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getSteps\(\) has parameter \$line with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CachedArrayKeywordsTest\:\:getSteps\(\) has parameter \$text with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Parameter \#2 \$string of function explode expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Parameter \#2 \$text of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Parameter \#5 \$keywordType of class Behat\\Gherkin\\Node\\StepNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CachedArrayKeywordsTest.php + + - + message: '#^Cannot use \+\+ on mixed\.$#' + identifier: postInc.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getKeywords\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getKeywordsArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getSteps\(\) has parameter \$keywordType with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getSteps\(\) has parameter \$keywords with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getSteps\(\) has parameter \$line with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\CucumberKeywordsTest\:\:getSteps\(\) has parameter \$text with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Parameter \#1 \$input of static method Symfony\\Component\\Yaml\\Yaml\:\:parse\(\) expects string, string\|false given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Parameter \#1 \$string of function mb_substr expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Parameter \#2 \$text of class Behat\\Gherkin\\Node\\StepNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Parameter \#5 \$keywordType of class Behat\\Gherkin\\Node\\StepNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/CucumberKeywordsTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\KeywordsDumperTest\:\:testEnKeywordsDumper\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\KeywordsDumperTest\:\:testExtendedVersionDumper\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\KeywordsDumperTest\:\:testRuKeywordsCustomKeywordsDumper\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Keywords\\KeywordsDumperTest\:\:testRuKeywordsDumper\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Parameter \#1 \$keywords of class Behat\\Gherkin\\Keywords\\KeywordsDumper constructor expects Behat\\Gherkin\\Keywords\\KeywordsInterface, mixed given\.$#' + identifier: argument.type + count: 4 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Parameter \#2 \$array of function implode expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Parameter \#2 \$array of function implode expects array\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Keywords\\KeywordsDumperTest\:\:\$keywords has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Keywords/KeywordsDumperTest.php + + - + message: '#^Cannot call method getLine\(\) on Behat\\Gherkin\\Node\\BackgroundNode\|null\.$#' + identifier: method.nonObject + count: 2 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Cannot call method getSteps\(\) on Behat\\Gherkin\\Node\\BackgroundNode\|null\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Cannot call method hasSteps\(\) on Behat\\Gherkin\\Node\\BackgroundNode\|null\.$#' + identifier: method.nonObject + count: 2 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 79 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 9 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertInstanceOf\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 8 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertNull\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 7 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 8 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadBackground\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadEmpty\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadOutline\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadScenarios\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadStepArguments\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testLoadSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testOutlineExamples\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testSingleFeatureArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\ArrayLoaderTest\:\:testSupports\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/ArrayLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/''\|''\\\\'' results in an error\.$#' + identifier: binaryOp.invalid + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/phps'' results in an error\.$#' + identifier: binaryOp.invalid + count: 2 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method expects\(\) on mixed\.$#' + identifier: method.nonObject + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method load\(\) on mixed\.$#' + identifier: method.nonObject + count: 3 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method method\(\) on mixed\.$#' + identifier: method.nonObject + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method setBasePath\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method supports\(\) on mixed\.$#' + identifier: method.nonObject + count: 6 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method will\(\) on mixed\.$#' + identifier: method.nonObject + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Cannot call method with\(\) on mixed\.$#' + identifier: method.nonObject + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 3 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:once\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:returnValue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:createGherkinFileLoaderMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:createGherkinMock\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:testBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:testDefinedFileLoad\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:testSupports\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:testUndefinedFileLoad\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Parameter \#1 \$gherkin of class Behat\\Gherkin\\Loader\\DirectoryLoader constructor expects Behat\\Gherkin\\Gherkin, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:\$featuresPath has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:\$gherkin has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Loader\\DirectoryLoaderTest\:\:\$loader has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Loader/DirectoryLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/''\|''\\\\'' results in an error\.$#' + identifier: binaryOp.invalid + count: 6 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/\.\./'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/multiline_nameā€¦'' results in an error\.$#' + identifier: binaryOp.invalid + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Binary operation "\." between mixed and ''/pystring\.feature'' results in an error\.$#' + identifier: binaryOp.invalid + count: 3 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 14 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 9 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:never\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:once\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\TestCase\:\:returnValue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 3 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:testBasePath\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:testLoad\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:testParsingCachedFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:testParsingUncachedFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:testSupports\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Parameter \#1 \$path of method Behat\\Gherkin\\Loader\\AbstractFileLoader\:\:setBasePath\(\) expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Loader\\GherkinFileLoaderTest\:\:\$featuresPath has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Loader/GherkinFileLoaderTest.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 7 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot access offset 1 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getDescription\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getFile\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getLanguage\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getLine\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getScenarios\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method getTitle\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method load\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method setBasePath\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Cannot call method supports\(\) on mixed\.$#' + identifier: method.nonObject + count: 5 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 23 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertInstanceOf\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\YamlFileLoaderTest\:\:testLoadAddition\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Loader\\YamlFileLoaderTest\:\:testSupports\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Parameter \#1 \$value of function count expects array\|Countable, mixed given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\Loader\\YamlFileLoaderTest\:\:\$loader has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/Loader/YamlFileLoaderTest.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ArgumentInterface\:\:getRaw\(\)\.$#' + identifier: method.notFound + count: 1 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Call to an undefined method Behat\\Gherkin\\Node\\ArgumentInterface\:\:getTableAsString\(\)\.$#' + identifier: method.notFound + count: 1 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 26 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\ExampleNodeTest\:\:testCreateExampleSteps\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\ExampleNodeTest\:\:testCreateExampleStepsWithArguments\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Parameter \#2 \$line of class Behat\\Gherkin\\Node\\PyStringNode constructor expects int, null given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, null given\.$#' + identifier: argument.type + count: 8 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, null given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Parameter \#6 \$line of class Behat\\Gherkin\\Node\\OutlineNode constructor expects int, null given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Node/ExampleNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 12 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertSame\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertTrue\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Parameter \#4 \$line of class Behat\\Gherkin\\Node\\StepNode constructor expects int, null given\.$#' + identifier: argument.type + count: 17 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Parameter \#4 \$tables of class Behat\\Gherkin\\Node\\OutlineNode constructor expects Behat\\Gherkin\\Node\\ExampleTableNode&iterable\, array\ given\.$#' + identifier: argument.type + count: 2 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Parameter \#5 \$keyword of class Behat\\Gherkin\\Node\\OutlineNode constructor expects string, null given\.$#' + identifier: argument.type + count: 5 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Parameter \#6 \$line of class Behat\\Gherkin\\Node\\OutlineNode constructor expects int, null given\.$#' + identifier: argument.type + count: 5 + path: tests/Behat/Gherkin/Node/OutlineNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/Node/PyStringNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\PyStringNodeTest\:\:testGetRaw\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/PyStringNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\PyStringNodeTest\:\:testGetStrings\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/PyStringNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\StepNodeTest\:\:testThatStepCanHaveOnlyOneArgument\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/StepNodeTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 25 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testConstructorExpectsEqualRowLengths\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testConstructorExpectsSameNumberOfColumnsInEachRow\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testConstructorExpectsScalarCellValue\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testConstructorExpectsTwoDimensionalArray\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testFromList\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetColumn\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetLines\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetRow\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetRowAsString\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetRowLine\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetRowWithLineNumbers\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetRows\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetTable\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetTableAsString\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testGetTableFromListWithMultidimensionalArrayArgument\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testHashTable\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testIterator\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testLongRowsHashTable\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testMergeRowsFromTablePassSeveralTablesShouldBeMerged\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testMergeRowsFromTableWrongHeaderNameExceptionThrown\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testMergeRowsFromTableWrongHeaderOrderExceptionThrown\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testMergeRowsFromTableWrongHeaderSizeExceptionThrown\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\Node\\TableNodeTest\:\:testRowsHashTable\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/Node/TableNodeTest.php + + - + message: '#^Cannot call method getBackground\(\) on Behat\\Gherkin\\Node\\FeatureNode\|null\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Cannot call method getDescription\(\) on Behat\\Gherkin\\Node\\FeatureNode\|null\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Cannot call method getScenarios\(\) on Behat\\Gherkin\\Node\\FeatureNode\|null\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Cannot call method getTitle\(\) on Behat\\Gherkin\\Node\\BackgroundNode\|null\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 4 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testAmbigiousLanguage\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testBackgroundWithTag\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testEmptyOutline\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testEndlessPyString\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testMultipleBackgrounds\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testMultipleFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testStepRightAfterFeature\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testTableWithoutRightBorder\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testTextInBackground\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testTextInScenario\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testWrongStepType\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserExceptionsTest\:\:testWrongTagPlacement\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserExceptionsTest.php + + - + message: '#^Argument of an invalid type list\\|false supplied for foreach, only iterables are supported\.$#' + identifier: foreach.nonIterable + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Binary operation "\." between literal\-string&non\-falsy\-string and mixed results in an error\.$#' + identifier: binaryOp.invalid + count: 2 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot access offset 0 on mixed\.$#' + identifier: offsetAccess.nonOffsetAccessible + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getBackground\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getDescription\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getKeyword\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getLanguage\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getLine\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getScenarios\(\) on mixed\.$#' + identifier: method.nonObject + count: 2 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getTags\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method getTitle\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method hasTags\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method load\(\) on mixed\.$#' + identifier: method.nonObject + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Cannot call method parse\(\) on mixed\.$#' + identifier: method.nonObject + count: 5 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertCount\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertEquals\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 2 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertFalse\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertIsArray\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:assertNull\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Dynamic call to static method PHPUnit\\Framework\\Assert\:\:markTestSkipped\(\)\.$#' + identifier: staticMethod.dynamicCall + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:getGherkinParser\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:getYamlParser\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:parseEtalon\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:parseEtalon\(\) has parameter \$etalon with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:parseFixture\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:parseFixture\(\) has parameter \$fixture with no type specified\.$#' + identifier: missingType.parameter + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:parserTestDataProvider\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:testParser\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:testParserResetsTagsBetweenFeatures\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:testParsingManyCommentsShouldPass\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Method Tests\\Behat\\Gherkin\\ParserTest\:\:testSingleCharacterStepSupport\(\) has no return type specified\.$#' + identifier: missingType.return + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#1 \$array of function array_shift expects array, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#1 \$path of function basename expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#1 \$title of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#2 \$description of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#2 \$newValue of method PHPUnit\\Framework\\TestCase\:\:iniSet\(\) expects string, int given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#3 \$tags of class Behat\\Gherkin\\Node\\FeatureNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#4 \$background of class Behat\\Gherkin\\Node\\FeatureNode constructor expects Behat\\Gherkin\\Node\\BackgroundNode\|null, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#5 \$scenarios of class Behat\\Gherkin\\Node\\FeatureNode constructor expects array\, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#6 \$keyword of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#7 \$language of class Behat\\Gherkin\\Node\\FeatureNode constructor expects string, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Parameter \#9 \$line of class Behat\\Gherkin\\Node\\FeatureNode constructor expects int, mixed given\.$#' + identifier: argument.type + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\ParserTest\:\:\$gherkin has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/ParserTest.php + + - + message: '#^Property Tests\\Behat\\Gherkin\\ParserTest\:\:\$yaml has no type specified\.$#' + identifier: missingType.property + count: 1 + path: tests/Behat/Gherkin/ParserTest.php diff --git a/phpstan.dist.neon b/phpstan.dist.neon index 8739a181..b301e94f 100644 --- a/phpstan.dist.neon +++ b/phpstan.dist.neon @@ -4,3 +4,5 @@ parameters: - bin - src - tests +includes: + - phpstan-baseline.neon