Skip to content

Add PHPUnit tests for AbstractPage circular parent validation and Man… #1498

Add PHPUnit tests for AbstractPage circular parent validation and Man…

Add PHPUnit tests for AbstractPage circular parent validation and Man… #1498

Triggered via push June 16, 2026 15:46
Status Failure
Total duration 4m 53s
Artifacts 8

ci.yml

on: push
Matrix: behat-lowest-deps
Matrix: behat-symfony-next
Matrix: behat
Matrix: php-cs-fixer
Matrix: phpunit-lowest-deps
Matrix: phpunit-symfony-next
Matrix: phpunit
Fit to window
Zoom out
Zoom in

Annotations

3 errors and 19 warnings
PHPUnit (Symfony NEXT 8.2) (PHP 8.5)
Process completed with exit code 1.
PHPUnit (Symfony 7.4) (PHP 8.5)
Process completed with exit code 1.
Behat (Symfony 7.4) (PHP 8.5)
Process completed with exit code 255.
PHP-CS-Fixer (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony NEXT 8.2) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony ^7.4) (PHP 8.5) (lowest dependencies)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 8.1) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 7.4) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4, codecov/codecov-action@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 7.4) (PHP 8.5): src/Entity/Core/AbstractPage.php#L100
Escaped Mutant for Mutator "Coalesce": @@ @@ #[Assert\Callback] public function validateNoCircularParent(ExecutionContextInterface $context): void { - $parent = $this->parentPage ?? $this->parentPageData; + $parent = $this->parentPageData ?? $this->parentPage; if (null === $parent) { return; }
PHPUnit (Symfony 7.4) (PHP 8.5): src/Entity/Core/AbstractComponent.php#L50
Escaped Mutant for Mutator "MethodCallRemoval": @@ @@ public function __construct() { $this->componentGroups = new ArrayCollection(); - $this->initComponentGroups(); + $this->componentPositions = new ArrayCollection(); } public function isPositionRestricted(): bool
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L77
Escaped Mutant for Mutator "SpreadAssignment": @@ @@ * @var Operation $oldOperation */ foreach ($oldOperations as $key => $oldOperation) { - $subRoutePrefixParts = [...$routePrefixParts]; + $subRoutePrefixParts = $routePrefixParts; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/'); $subRoutePrefix = '/' . implode('/', $subRoutePrefixParts);
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L77
Escaped Mutant for Mutator "SpreadOneItem": @@ @@ * @var Operation $oldOperation */ foreach ($oldOperations as $key => $oldOperation) { - $subRoutePrefixParts = [...$routePrefixParts]; + $subRoutePrefixParts = [[...$routePrefixParts][0]]; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/'); $subRoutePrefix = '/' . implode('/', $subRoutePrefixParts);
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L76
Escaped Mutant for Mutator "Foreach_": @@ @@ * @var string $key * @var Operation $oldOperation */ - foreach ($oldOperations as $key => $oldOperation) { + foreach ([] as $key => $oldOperation) { $subRoutePrefixParts = [...$routePrefixParts]; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/');
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L64
Escaped Mutant for Mutator "SpreadAssignment": @@ @@ $resources = []; /** @var ApiResource $resourceMetadatum */ foreach ($resourceMetadata as $i => $resourceMetadatum) { - $finalRoutePrefixParts = [...$routePrefixParts]; + $finalRoutePrefixParts = $routePrefixParts; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/'); }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L64
Escaped Mutant for Mutator "SpreadOneItem": @@ @@ $resources = []; /** @var ApiResource $resourceMetadatum */ foreach ($resourceMetadata as $i => $resourceMetadatum) { - $finalRoutePrefixParts = [...$routePrefixParts]; + $finalRoutePrefixParts = [[...$routePrefixParts][0]]; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/'); }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L63
Escaped Mutant for Mutator "Foreach_": @@ @@ { $resources = []; /** @var ApiResource $resourceMetadatum */ - foreach ($resourceMetadata as $i => $resourceMetadatum) { + foreach ([] as $i => $resourceMetadatum) { $finalRoutePrefixParts = [...$routePrefixParts]; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/');
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L47
Escaped Mutant for Mutator "IfNegation": @@ @@ // underscores for core resources $reflection = new \ReflectionClass($resourceClass); $namespace = $reflection->getNamespaceName(); - if (preg_match("/Silverback\\\\ApiComponentsBundle\\\\(?!Test)[\\w]+/", $namespace)) { + if (!preg_match("/Silverback\\\\ApiComponentsBundle\\\\(?!Test)[\\w]+/", $namespace)) { $routePrefixParts[] = '_'; } }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L41
Escaped Mutant for Mutator "ElseIfNegation": @@ @@ $routePrefixParts = []; if (is_subclass_of($resourceClass, AbstractComponent::class)) { $routePrefixParts[] = 'component'; - } elseif (is_subclass_of($resourceClass, AbstractPageData::class)) { + } elseif (!is_subclass_of($resourceClass, AbstractPageData::class)) { $routePrefixParts[] = 'page_data'; } else { // underscores for core resources
Behat (Symfony ^7.4) (PHP 8.5) (lowest dependencies)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony NEXT 8.2) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony 8.1) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony 7.4) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4, codecov/codecov-action@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
behat-logs-php8.5-lowest-deps
6.93 KB
sha256:29bb4d886e65f8e3578ae7a7cfac652614c5db3c09e15a03390cff060332a8e8
behat-logs-php8.5-symfony7.4
9.48 KB
sha256:b8f70968e8bef4c250ade4835c986c1d5f79e69ceea5899620590b807db25191
behat-logs-php8.5-symfony8.1
9.42 KB
sha256:ed3ed7607d6ed922f9e9241b5bee22a48d1fd6b71e1bc1a6a88fc11e382ccafc
behat-logs-php8.5-symfony8.2
9.44 KB
sha256:ebfe45ee6199c1ca389ce118fbd30dfdf5a01458650ec2fd311d502f1efbbce6
phpunit-logs-php8.5-lowest-deps
4.31 KB
sha256:96047609a7f1d2bcf85ecf3bd9e55d5f932fa658fde02714eb975c5c46ace170
phpunit-logs-php8.5-symfony7.4
666 KB
sha256:73dd5baa9f0a9fa3ecaefb59a03cb065d5e8b0df7d061ef96ed31b5fb62688fa
phpunit-logs-php8.5-symfony8.1
4.32 KB
sha256:f5e41dadafe6f193a5bf18a32afdb8d7b66f0228183b78bd621ce7703939c564
phpunit-logs-php8.5-symfony8.2
4.28 KB
sha256:c56ef26f7365e76646f26117d882cc4f8cf5bdfbbd0a4cd03b5f0133c703a1b6