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

api-platform / core / 13722973459

07 Mar 2025 02:39PM UTC coverage: 8.518% (-0.001%) from 8.519%
13722973459

push

github

web-flow
fix(laravel): query extensions with item operations (#7001)

0 of 13 new or added lines in 4 files covered. (0.0%)

2480 existing lines in 163 files now uncovered.

13377 of 157041 relevant lines covered (8.52%)

22.89 hits per line

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

53.85
/src/Metadata/Util/ClassInfoTrait.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\Metadata\Util;
15

16
/**
17
 * Retrieves information about a class.
18
 *
19
 * @internal
20
 *
21
 * @author Kévin Dunglas <dunglas@gmail.com>
22
 */
23
trait ClassInfoTrait
24
{
25
    /**
26
     * Get class name of the given object.
27
     */
28
    private function getObjectClass(object $object): string
29
    {
30
        return $this->getRealClassName($object::class);
1,917✔
31
    }
32

33
    /**
34
     * Get the real class name of a class name that could be a proxy.
35
     */
36
    private function getRealClassName(string $className): string
37
    {
38
        // __CG__: Doctrine Common Marker for Proxy (ODM < 2.0 and ORM < 3.0)
39
        // __PM__: Ocramius Proxy Manager (ODM >= 2.0)
40
        $positionCg = strrpos($className, '\\__CG__\\');
1,973✔
41
        $positionPm = strrpos($className, '\\__PM__\\');
1,973✔
42

43
        if (false === $positionCg && false === $positionPm) {
1,973✔
44
            return $className;
1,973✔
45
        }
46

UNCOV
47
        if (false !== $positionCg) {
190✔
UNCOV
48
            return substr($className, $positionCg + 8);
190✔
49
        }
50

51
        $className = ltrim($className, '\\');
×
52

53
        return substr(
×
54
            $className,
×
55
            8 + $positionPm,
×
56
            strrpos($className, '\\') - ($positionPm + 8)
×
57
        );
×
58
    }
59
}
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

© 2025 Coveralls, Inc