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

eliashaeussler / composer-update-check / 12331236834

14 Dec 2024 04:02PM UTC coverage: 20.538%. First build
12331236834

Pull #130

github

web-flow
Merge pull request #170 from eliashaeussler/renovate/major-phpstan-packages

[TASK] Update phpstan/phpstan-symfony to v2
Pull Request #130: [!!!][FEATURE] Modernize plugin

356 of 1832 new or added lines in 57 files covered. (19.43%)

382 of 1860 relevant lines covered (20.54%)

1.11 hits per line

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

84.62
/src/Entity/Result/ScanResult.php
1
<?php
2

3
declare(strict_types=1);
4

5
/*
6
 * This file is part of the Composer package "eliashaeussler/composer-update-check".
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\ComposerUpdateCheck\Entity\Result;
25

26
use Composer\Semver;
27
use EliasHaeussler\ComposerUpdateCheck\Entity;
28

29
/**
30
 * ScanResult.
31
 *
32
 * @author Elias Häußler <elias@haeussler.dev>
33
 * @license GPL-3.0-or-later
34
 */
35
final class ScanResult
36
{
37
    /**
38
     * @param array<string, list<Entity\Security\SecurityAdvisory>> $securityAdvisories
39
     */
40
    public function __construct(
8✔
41
        private readonly array $securityAdvisories,
42
    ) {}
8✔
43

44
    /**
45
     * @return array<string, list<Entity\Security\SecurityAdvisory>>
46
     */
NEW
47
    public function getSecurityAdvisories(): array
×
48
    {
NEW
49
        return $this->securityAdvisories;
×
50
    }
51

52
    /**
53
     * @return list<Entity\Security\SecurityAdvisory>
54
     */
55
    public function getSecurityAdvisoriesForPackage(Entity\Package\OutdatedPackage $package): array
8✔
56
    {
57
        $packageVersion = $package->getOutdatedVersion()->toString();
8✔
58
        $securityAdvisories = [];
8✔
59

60
        foreach ($this->securityAdvisories[$package->getName()] ?? [] as $securityAdvisory) {
8✔
61
            if (Semver\Semver::satisfies($packageVersion, $securityAdvisory->getAffectedVersions())) {
6✔
62
                $securityAdvisories[] = $securityAdvisory;
4✔
63
            }
64
        }
65

66
        return $securityAdvisories;
8✔
67
    }
68

69
    public function isPackageInsecure(Entity\Package\OutdatedPackage $package): bool
4✔
70
    {
71
        return [] !== $this->getSecurityAdvisoriesForPackage($package);
4✔
72
    }
73
}
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