• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

api-platform / core / 10884379752

16 Sep 2024 01:01PM UTC coverage: 7.281% (-0.4%) from 7.672%
10884379752

push

github

soyuka
Merge 3.4

0 of 100 new or added lines in 7 files covered. (0.0%)

5332 existing lines in 181 files now uncovered.

11994 of 164725 relevant lines covered (7.28%)

9.52 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

62.5
/src/Doctrine/Common/State/LinksHandlerLocatorTrait.php
1
<?php
2

3
/*
4
 * This file is part of the API Platform project.
5
 *
6
 * (c) Kévin Dunglas <dunglas@gmail.com>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11

12
declare(strict_types=1);
13

14
namespace ApiPlatform\Doctrine\Common\State;
15

16
use ApiPlatform\Metadata\Exception\RuntimeException;
17
use ApiPlatform\Metadata\Operation;
18
use Psr\Container\ContainerInterface;
19

20
/**
21
 * @internal
22
 */
23
trait LinksHandlerLocatorTrait
24
{
25
    private ?ContainerInterface $handleLinksLocator;
26

27
    private function getLinksHandler(Operation $operation): ?callable
28
    {
UNCOV
29
        if (!($options = $operation->getStateOptions()) || !$options instanceof Options) {
543✔
30
            return null;
×
31
        }
32

UNCOV
33
        $handleLinks = $options->getHandleLinks();
543✔
UNCOV
34
        if (\is_callable($handleLinks)) {
543✔
35
            return $handleLinks;
×
36
        }
37

UNCOV
38
        if ($this->handleLinksLocator && \is_string($handleLinks) && $this->handleLinksLocator->has($handleLinks)) {
543✔
UNCOV
39
            return [$this->handleLinksLocator->get($handleLinks), 'handleLinks'];
543✔
40
        }
41

42
        throw new RuntimeException(\sprintf('Could not find handleLinks service "%s"', $handleLinks));
×
43
    }
44
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc