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

api-platform / core / 14837364288

05 May 2025 01:16PM UTC coverage: 8.457% (-0.002%) from 8.459%
14837364288

Pull #7122

github

web-flow
Merge 6606a9d5c into f55606b01
Pull Request #7122: Cherry picks from main (deprecations)

0 of 8 new or added lines in 1 file covered. (0.0%)

2030 existing lines in 147 files now uncovered.

13397 of 158416 relevant lines covered (8.46%)

22.88 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,931✔
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,987✔
41
        $positionPm = strrpos($className, '\\__PM__\\');
1,987✔
42

43
        if (false === $positionCg && false === $positionPm) {
1,987✔
44
            return $className;
1,987✔
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