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

eliashaeussler / cache-warmup / 8011103897

22 Feb 2024 09:17PM UTC coverage: 76.466% (-21.2%) from 97.674%
8011103897

Pull #333

github

web-flow
Merge ca3e396ce into 0442a6074
Pull Request #333: [FEATURE] Introduce Config API

44 of 355 new or added lines in 15 files covered. (12.39%)

6 existing lines in 1 file now uncovered.

1095 of 1432 relevant lines covered (76.47%)

6.73 hits per line

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

0.0
/src/Exception/InvalidEnvironmentVariablesException.php
1
<?php
2

3
declare(strict_types=1);
4

5
/*
6
 * This file is part of the Composer package "eliashaeussler/cache-warmup".
7
 *
8
 * Copyright (C) 2020-2024 Elias Häußler <elias@haeussler.dev>
9
 *
10
 * This program is free software: you can redistribute it and/or modify
11
 * it under the terms of the GNU General Public License as published by
12
 * the Free Software Foundation, either version 3 of the License, or
13
 * (at your option) any later version.
14
 *
15
 * This program is distributed in the hope that it will be useful,
16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
 * GNU General Public License for more details.
19
 *
20
 * You should have received a copy of the GNU General Public License
21
 * along with this program. If not, see <https://www.gnu.org/licenses/>.
22
 */
23

24
namespace EliasHaeussler\CacheWarmup\Exception;
25

26
use CuyZ\Valinor;
27

28
use function implode;
29
use function sprintf;
30

31
/**
32
 * InvalidEnvironmentVariablesException.
33
 *
34
 * @author Elias Häußler <elias@haeussler.dev>
35
 * @license GPL-3.0-or-later
36
 */
37
final class InvalidEnvironmentVariablesException extends Exception
38
{
39
    /**
40
     * @param array<string, string> $nameMapping
41
     */
NEW
42
    public static function create(Valinor\Mapper\MappingError $error, array $nameMapping = []): self
×
43
    {
NEW
44
        $errorMessages = [];
×
NEW
45
        $errors = Valinor\Mapper\Tree\Message\Messages::flattenFromNode($error->node())->errors();
×
46

NEW
47
        foreach ($errors as $propertyError) {
×
NEW
48
            $path = $propertyError->node()->path();
×
NEW
49
            $errorMessages[] = sprintf(
×
NEW
50
                '  * %s: %s',
×
NEW
51
                $nameMapping[$path] ?? $path,
×
NEW
52
                $propertyError->toString(),
×
NEW
53
            );
×
54
        }
55

NEW
56
        return new self(
×
NEW
57
            sprintf(
×
NEW
58
                'Some environment variables are invalid:%s%s',
×
NEW
59
                PHP_EOL,
×
NEW
60
                implode(PHP_EOL, $errorMessages),
×
NEW
61
            ),
×
NEW
62
            1708635629,
×
NEW
63
        );
×
64
    }
65
}
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