Skip to content

Update PHPUnit and add failOnPhpunitDeprecation option (#883) #278

Update PHPUnit and add failOnPhpunitDeprecation option (#883)

Update PHPUnit and add failOnPhpunitDeprecation option (#883) #278

Triggered via push September 4, 2024 21:15
Status Success
Total duration 3m 11s
Artifacts

ci.yml

on: push
Matrix: Code Coverage
Matrix: Coding Standards
Matrix: Lint composer.json
Matrix: Static Analysis
Matrix: Tests
Matrix: Lint XMLs
Fit to window
Zoom out
Zoom in

Annotations

19 warnings
Lint XMLs (8.2)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Lint composer.json (8.2)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Static Analysis (8.2)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Code Coverage (8.2)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Code Coverage (8.2): src/JUnit/LogMerger.php#L81
Escaped Mutant for Mutator "Continue_": @@ @@ foreach ($suite2->suites as $suite2suiteName => $suite2suite) { if (!isset($suites[$suite2suiteName])) { $suites[$suite2suiteName] = $suite2suite; - continue; + break; } $suites[$suite2suiteName] = $this->mergeSuites($suites[$suite2suiteName], $suite2suite); }
Code Coverage (8.2): src/JUnit/LogMerger.php#L90
Escaped Mutant for Mutator "FunctionCallRemoval": @@ @@ } $suites[$suite2suiteName] = $this->mergeSuites($suites[$suite2suiteName], $suite2suite); } - ksort($suites); + return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, array_merge($suite1->cases, $suite2->cases)); } }
Code Coverage (8.2): src/JUnit/LogMerger.php#L97
Escaped Mutant for Mutator "Plus": @@ @@ $suites[$suite2suiteName] = $this->mergeSuites($suites[$suite2suiteName], $suite2suite); } ksort($suites); - return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, array_merge($suite1->cases, $suite2->cases)); + return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors - $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, array_merge($suite1->cases, $suite2->cases)); } }
Code Coverage (8.2): src/JUnit/LogMerger.php#L102
Escaped Mutant for Mutator "UnwrapArrayMerge": @@ @@ $suites[$suite2suiteName] = $this->mergeSuites($suites[$suite2suiteName], $suite2suite); } ksort($suites); - return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, array_merge($suite1->cases, $suite2->cases)); + return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, $suite1->cases); } }
Code Coverage (8.2): src/JUnit/LogMerger.php#L102
Escaped Mutant for Mutator "UnwrapArrayMerge": @@ @@ $suites[$suite2suiteName] = $this->mergeSuites($suites[$suite2suiteName], $suite2suite); } ksort($suites); - return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, array_merge($suite1->cases, $suite2->cases)); + return new TestSuite($suite1->name, $suite1->tests + $suite2->tests, $suite1->assertions + $suite2->assertions, $suite1->failures + $suite2->failures, $suite1->errors + $suite2->errors, $suite1->skipped + $suite2->skipped, $suite1->time + $suite2->time, $suite1->file, $suites, $suite2->cases); } }
Code Coverage (8.2): src/JUnit/TestCase.php#L87
Escaped Mutant for Mutator "CastString": @@ @@ return new TestCaseWithMessage((string) $node['name'], (string) $node['class'], (string) $node['file'], (int) $node['line'], (int) $node['assertions'], (float) $node['time'], $type, $text, MessageType::failure); } if ($node->xpath('skipped') !== []) { - $text = (string) $node['name']; + $text = $node['name']; if ((string) $node['class'] !== '') { $text = sprintf("%s::%s\n\n%s:%s", $node['class'], $node['name'], $node['file'], $node['line']); }
Code Coverage (8.2): src/JUnit/TestCase.php#L88
Escaped Mutant for Mutator "CastString": @@ @@ } if ($node->xpath('skipped') !== []) { $text = (string) $node['name']; - if ((string) $node['class'] !== '') { + if ($node['class'] !== '') { $text = sprintf("%s::%s\n\n%s:%s", $node['class'], $node['name'], $node['file'], $node['line']); } return new TestCaseWithMessage((string) $node['name'], (string) $node['class'], (string) $node['file'], (int) $node['line'], (int) $node['assertions'], (float) $node['time'], null, $text, MessageType::skipped);
Code Coverage (8.2): src/JUnit/TestCase.php#L88
Escaped Mutant for Mutator "NotIdentical": @@ @@ } if ($node->xpath('skipped') !== []) { $text = (string) $node['name']; - if ((string) $node['class'] !== '') { + if ((string) $node['class'] === '') { $text = sprintf("%s::%s\n\n%s:%s", $node['class'], $node['name'], $node['file'], $node['line']); } return new TestCaseWithMessage((string) $node['name'], (string) $node['class'], (string) $node['file'], (int) $node['line'], (int) $node['assertions'], (float) $node['time'], null, $text, MessageType::skipped);
Code Coverage (8.2): src/JUnit/Writer.php#L32
Escaped Mutant for Mutator "TrueValue": @@ @@ public function __construct() { $this->document = new DOMDocument('1.0', 'UTF-8'); - $this->document->formatOutput = true; + $this->document->formatOutput = false; } public function write(TestSuite $testSuite, string $path): void {
Code Coverage (8.2): src/Options.php#L104
Escaped Mutant for Mutator "LogicalOrAllSubExprNegation": @@ @@ */ private function __construct(public readonly Configuration $configuration, public readonly string $phpunit, public readonly string $cwd, public readonly int $maxBatchSize, public readonly bool $noTestTokens, public readonly ?array $passthruPhp, public readonly array $phpunitOptions, public readonly int $processes, public readonly string $runner, public readonly string $tmpDir, public readonly bool $verbose, public readonly bool $functional) { - $this->needsTeamcity = $configuration->outputIsTeamCity() || $configuration->hasLogfileTeamcity(); + $this->needsTeamcity = !$configuration->outputIsTeamCity() || !$configuration->hasLogfileTeamcity(); } /** @param non-empty-string $cwd */ public static function fromConsoleInput(InputInterface $input, string $cwd): self
Coding Standards (8.2)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Tests (8.2, lowest)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Tests (8.3, highest)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Tests (8.3, lowest)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Tests (8.2, highest)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/cache@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/