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

api-platform / core / 14400511848

11 Apr 2025 09:53AM UTC coverage: 8.488%. Remained the same
14400511848

push

github

soyuka
docs: changelog 4.1.7

13402 of 157890 relevant lines covered (8.49%)

22.86 hits per line

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

100.0
/src/GraphQl/Executor.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\GraphQl;
15

16
use GraphQL\Executor\ExecutionResult;
17
use GraphQL\GraphQL;
18
use GraphQL\Type\Schema;
19
use GraphQL\Validator\DocumentValidator;
20
use GraphQL\Validator\Rules\DisableIntrospection;
21
use GraphQL\Validator\Rules\QueryComplexity;
22
use GraphQL\Validator\Rules\QueryDepth;
23

24
/**
25
 * Wrapper for the GraphQL facade.
26
 *
27
 * @author Alan Poulain <contact@alanpoulain.eu>
28
 */
29
final class Executor implements ExecutorInterface
30
{
31
    public function __construct(private readonly bool $graphQlIntrospectionEnabled = true, private readonly int $maxQueryComplexity = 500, private readonly int $maxQueryDepth = 20)
32
    {
33
        DocumentValidator::addRule(
306✔
34
            new DisableIntrospection(
306✔
35
                $this->graphQlIntrospectionEnabled ? DisableIntrospection::DISABLED : DisableIntrospection::ENABLED
306✔
36
            )
306✔
37
        );
306✔
38

39
        $queryComplexity = new QueryComplexity($this->maxQueryComplexity);
306✔
40
        DocumentValidator::addRule($queryComplexity);
306✔
41

42
        $queryDepth = new QueryDepth($this->maxQueryDepth);
306✔
43
        DocumentValidator::addRule($queryDepth);
306✔
44
    }
45

46
    /**
47
     * {@inheritdoc}
48
     */
49
    public function executeQuery(Schema $schema, $source, mixed $rootValue = null, mixed $context = null, ?array $variableValues = null, ?string $operationName = null, ?callable $fieldResolver = null, ?array $validationRules = null): ExecutionResult
50
    {
51
        return GraphQL::executeQuery($schema, $source, $rootValue, $context, $variableValues, $operationName, $fieldResolver, $validationRules);
302✔
52
    }
53
}
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