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

tempestphp / tempest-framework / 12021710761

25 Nov 2024 06:54PM UTC coverage: 79.441% (-2.6%) from 81.993%
12021710761

push

github

web-flow
ci: close stale issues and pull requests

7879 of 9918 relevant lines covered (79.44%)

61.32 hits per line

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

61.54
/src/Tempest/Http/src/RouteDiscovery.php
1
<?php
2

3
declare(strict_types=1);
4

5
namespace Tempest\Http;
6

7
use Tempest\Core\Discovery;
8
use Tempest\Core\DiscoveryLocation;
9
use Tempest\Core\IsDiscovery;
10
use Tempest\Http\Routing\Construction\RouteConfigurator;
11
use Tempest\Reflection\ClassReflector;
12

13
final class RouteDiscovery implements Discovery
14
{
15
    use IsDiscovery;
16

17
    public function __construct(
382✔
18
        private readonly RouteConfigurator $configurator,
19
        private readonly RouteConfig $routeConfig,
20
    ) {
21
    }
382✔
22

23
    public function discover(DiscoveryLocation $location, ClassReflector $class): void
×
24
    {
25
        foreach ($class->getPublicMethods() as $method) {
×
26
            $routeAttributes = $method->getAttributes(Route::class);
×
27

28
            foreach ($routeAttributes as $routeAttribute) {
×
29
                $this->discoveryItems->add($location, [$method, $routeAttribute]);
×
30
            }
31
        }
32
    }
33

34
    public function apply(): void
382✔
35
    {
36
        foreach ($this->discoveryItems as [$method, $routeAttribute]) {
382✔
37
            $routeAttribute->setHandler($method);
382✔
38
            $this->configurator->addRoute($routeAttribute);
382✔
39
        }
40

41
        if ($this->configurator->isDirty()) {
382✔
42
            $this->routeConfig->apply($this->configurator->toRouteConfig());
382✔
43
        }
44
    }
45
}
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