Config (Edge\QA\Config)
- Load default config
- Build absolute path
- Override default config
- Allow partial update of tools
- Ignore non existent user config
- No exception when cwd has no config
- Throw exception when file does not exist
- Config csv string
- Use cwd if no directory is specified
- Ignore invalid binary does not exist
- Tool and binary name might not match
- Multiple config
- Autodetect config in current directory
- Ignore autodetected config if user config is specified
Get Versions (Edge\QA\Tools\GetVersions)
- Normalize version with data set "full semver"
- Normalize version with data set "minor release"
- Normalize version with data set "major release"
- Cli version with data set "semver at the end"
- Cli version with data set "semver at the start"
- Cli version with data set "semver at 2nd line"
- Cli version with data set "custom format"
- Cli version with data set "no space"
- Cli version with data set "dev version"
- Cli version with data set "prefer semver (semver + dev)"
- Cli version with data set "prefer semver (dev + semver)"
- Cli version with data set "no version"
- Compare versions with data set "no version"
- Compare versions with data set "is lower?"
- Compare versions with data set "is greater than dev version"
- Compare versions with data set "semver is greater than"
- Compare versions with data set "dev version is greater than"
Ignored Paths (Edge\QA\IgnoredPaths)
- No option when nothing is ignored with data set #0
- No option when nothing is ignored with data set #1
- No option when nothing is ignored with data set #2
- No option when nothing is ignored with data set "pdepend + windows"
- No option when nothing is ignored with data set "phpmd + windows"
- No option when nothing is ignored with data set #3
- No option when nothing is ignored with data set #4
- No option when nothing is ignored with data set #5
- No option when nothing is ignored with data set #6
- No option when nothing is ignored with data set #7
- Ignore directories and files with data set #0
- Ignore directories and files with data set #1
- Ignore directories and files with data set #2
- Ignore directories and files with data set "pdepend + windows"
- Ignore directories and files with data set "phpmd + windows"
- Ignore directories and files with data set #3
- Ignore directories and files with data set #4
- Ignore directories and files with data set #5
- Ignore directories and files with data set #6
- Ignore directories and files with data set #7
Options (Edge\QA\Options)
- Escape paths
- Respect tools order defined in option
- Ignore pdepend in cli output
- Is suggested tool installed with data set "internal class is available"
- Is suggested tool installed with data set "at least one internal class is available"
- Is suggested tool installed with data set "dependency is available"
- Is suggested tool installed with data set "dependency is not available"
- Build output with data set "ignore verbose and report in CLI output"
- Build output with data set "respect verbose mode and report in FILE output"
- Execute with data set "parallel execution is default mode"
- Execute with data set "parallel execution"
- Execute with data set "dont use parallelism if execution is other word"
- Build root path with data set "current dir + analyzed dir + slash"
- Build root path with data set "find common root from multiple dirs"
- Build root path with data set "no path when dir is invalid"
- Build root path with data set "file directory + skip invalid dir"
- Load allowed errors count
Paths (Edge\QA\Paths)
- Path to binary is escaped
Report (Edge\QA\Report)
- Convert twig to html
- Convert xml to html with data set "create html"
- Convert xml to html with data set "create empty file if something went south"
- Ignore missing xml documents
Running Tool (Edge\QA\RunningTool)
- Build option with defined separator
- Mark success when x path is not defined
- Mark failure when xml file does not exist with data set "success when allowed errors are not defined"
- Mark failure when xml file does not exist with data set "success when errors count are defined"
- Compare allowed count with errors count from xml with data set "success when allowed errors are not defined"
- Compare allowed count with errors count from xml with data set "success when errors count <= allowed count"
- Compare allowed count with errors count from xml with data set "failure when errors count > allowed count"
- Runtime selection of error xpath
- Multiple xpaths with data set "multiple elements"
- Multiple xpaths with data set "invalid xpath"
- Analyze exit code in cli mode with data set "success when exit code = 0"
- Analyze exit code in cli mode with data set "success when exit code <= allowed code"
- Analyze exit code in cli mode with data set "failure when errors count > allowed count but errors count is always one"
- Create unique id for user report
- Dynamic output mode phpstan
Phpstan (Edge\QA\Tools\Analyzer\Phpstan)
- Build config with data set "No config"
- Build config with data set "No parameters in config"
- Build config with data set "excludePaths shortcut"
- Build config with data set "excludePaths + analyseAndScan"
- Build config with data set "Deprecated excludes_analyse"