Classes

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 10 20 30 40 50 Line Coverage (%) Cyclomatic Complexity Icawebdesign\Hibp\Password\PwnedPassword — Coverage: 100.0% | Lines: 137 | Complexity: 38 Icawebdesign\Hibp\Breach\Breach — Coverage: 98.1% | Lines: 104 | Complexity: 33 Icawebdesign\Hibp\Breach\BreachSiteEntity — Coverage: 100.0% | Lines: 49 | Complexity: 5 Icawebdesign\Hibp\Paste\Paste — Coverage: 100.0% | Lines: 23 | Complexity: 8 Icawebdesign\Hibp\Paste\PasteEntity — Coverage: 100.0% | Lines: 16 | Complexity: 4 Icawebdesign\Hibp\HibpHttp — Coverage: 100.0% | Lines: 12 | Complexity: 4 Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity — Coverage: 100.0% | Lines: 7 | Complexity: 4 Icawebdesign\Hibp\Password\PwnedPasswordEntity — Coverage: 100.0% | Lines: 7 | Complexity: 3

Methods

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 2 4 6 8 Line Coverage (%) Cyclomatic Complexity Icawebdesign\Hibp\Breach\Breach::getBreachedAccountTruncated — Coverage: 100.0% | Lines: 24 | Complexity: 6 Icawebdesign\Hibp\Breach\BreachSiteEntity::__construct — Coverage: 100.0% | Lines: 22 | Complexity: 2 Icawebdesign\Hibp\Breach\Breach::getBreachedAccount — Coverage: 100.0% | Lines: 21 | Complexity: 6 Icawebdesign\Hibp\Breach\BreachSiteEntity::toArray — Coverage: 100.0% | Lines: 21 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::paddedRangeFromHash — Coverage: 100.0% | Lines: 19 | Complexity: 6 Icawebdesign\Hibp\Password\PwnedPassword::paddedNtlmRangeFromHash — Coverage: 100.0% | Lines: 19 | Complexity: 6 Icawebdesign\Hibp\Password\PwnedPassword::rangeFromHash — Coverage: 100.0% | Lines: 16 | Complexity: 5 Icawebdesign\Hibp\Password\PwnedPassword::ntlmRangeFromHash — Coverage: 100.0% | Lines: 16 | Complexity: 5 Icawebdesign\Hibp\Paste\Paste::lookup — Coverage: 100.0% | Lines: 16 | Complexity: 6 Icawebdesign\Hibp\Breach\Breach::getAllBreachSites — Coverage: 85.7% | Lines: 14 | Complexity: 3 Icawebdesign\Hibp\Password\PwnedPassword::getRangeData — Coverage: 100.0% | Lines: 14 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::getRangeDataWithPadding — Coverage: 100.0% | Lines: 14 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::rangeDataFromHash — Coverage: 100.0% | Lines: 13 | Complexity: 4 Icawebdesign\Hibp\Password\PwnedPassword::paddedRangeDataFromHash — Coverage: 100.0% | Lines: 13 | Complexity: 4 Icawebdesign\Hibp\Paste\PasteEntity::__construct — Coverage: 100.0% | Lines: 13 | Complexity: 2 Icawebdesign\Hibp\Breach\Breach::getBreach — Coverage: 100.0% | Lines: 12 | Complexity: 5 Icawebdesign\Hibp\Breach\Breach::getLatestBreach — Coverage: 100.0% | Lines: 12 | Complexity: 5 Icawebdesign\Hibp\HibpHttp::__construct — Coverage: 100.0% | Lines: 11 | Complexity: 3 Icawebdesign\Hibp\Breach\Breach::getAllDataClasses — Coverage: 100.0% | Lines: 10 | Complexity: 2 Icawebdesign\Hibp\Password\PwnedPassword::stripZeroMatchesData — Coverage: 100.0% | Lines: 6 | Complexity: 3 Icawebdesign\Hibp\Breach\Breach::getRequest — Coverage: 100.0% | Lines: 5 | Complexity: 1 Icawebdesign\Hibp\Breach\BreachSiteEntity::dateStringToCarbon — Coverage: 100.0% | Lines: 5 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::getRequest — Coverage: 100.0% | Lines: 5 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPasswordEntity::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 Icawebdesign\Hibp\Paste\Paste::getRequest — Coverage: 100.0% | Lines: 5 | Complexity: 1 Icawebdesign\Hibp\Breach\Breach::filterDomain — Coverage: 100.0% | Lines: 3 | Complexity: 2 Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::__construct — Coverage: 100.0% | Lines: 3 | Complexity: 2 Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::toArray — Coverage: 100.0% | Lines: 3 | Complexity: 1 Icawebdesign\Hibp\Paste\PasteEntity::dateStringToCarbon — Coverage: 100.0% | Lines: 3 | Complexity: 2 Icawebdesign\Hibp\Breach\Breach::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Icawebdesign\Hibp\Paste\Paste::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Icawebdesign\Hibp\Breach\Breach::hasDomainFilter — Coverage: 100.0% | Lines: 1 | Complexity: 2 Icawebdesign\Hibp\Breach\BreachSiteEntity::toJson — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::toJson — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\HibpHttp::client — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPassword::hashSnippet — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPasswordEntity::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Icawebdesign\Hibp\Password\PwnedPasswordEntity::toJson — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

Sorted by descending CRAP (Change Risk Anti-Patterns) index.

Method CRAP Coverage
Icawebdesign\Hibp\Breach\Breach::getBreachedAccount6100.0%
Icawebdesign\Hibp\Breach\Breach::getBreachedAccountTruncated6100.0%
Icawebdesign\Hibp\Password\PwnedPassword::paddedRangeFromHash6100.0%
Icawebdesign\Hibp\Password\PwnedPassword::paddedNtlmRangeFromHash6100.0%
Icawebdesign\Hibp\Paste\Paste::lookup6100.0%
Icawebdesign\Hibp\Breach\Breach::getBreach5100.0%
Icawebdesign\Hibp\Breach\Breach::getLatestBreach5100.0%
Icawebdesign\Hibp\Password\PwnedPassword::rangeFromHash5100.0%
Icawebdesign\Hibp\Password\PwnedPassword::ntlmRangeFromHash5100.0%
Icawebdesign\Hibp\Password\PwnedPassword::rangeDataFromHash4100.0%
Icawebdesign\Hibp\Password\PwnedPassword::paddedRangeDataFromHash4100.0%
Icawebdesign\Hibp\Breach\Breach::getAllBreachSites3.0385.7%
Icawebdesign\Hibp\HibpHttp::__construct3100.0%
Icawebdesign\Hibp\Password\PwnedPassword::stripZeroMatchesData3100.0%
Icawebdesign\Hibp\Breach\Breach::filterDomain2100.0%
Icawebdesign\Hibp\Breach\Breach::hasDomainFilter2100.0%
Icawebdesign\Hibp\Breach\Breach::getAllDataClasses2100.0%
Icawebdesign\Hibp\Breach\BreachSiteEntity::__construct2100.0%
Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::__construct2100.0%
Icawebdesign\Hibp\PHPStan\CollectionMakeReturnTypeExtension::getTypeFromStaticMethodCall2100.0%
Icawebdesign\Hibp\Paste\PasteEntity::__construct2100.0%
Icawebdesign\Hibp\Paste\PasteEntity::dateStringToCarbon2100.0%
Icawebdesign\Hibp\Breach\Breach::__construct1100.0%
Icawebdesign\Hibp\Breach\Breach::getRequest1100.0%
Icawebdesign\Hibp\Breach\BreachSiteEntity::dateStringToCarbon1100.0%
Icawebdesign\Hibp\Breach\BreachSiteEntity::toArray1100.0%
Icawebdesign\Hibp\Breach\BreachSiteEntity::toJson1100.0%
Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::toArray1100.0%
Icawebdesign\Hibp\Breach\BreachSiteTruncatedEntity::toJson1100.0%
Icawebdesign\Hibp\HibpHttp::client1100.0%
Icawebdesign\Hibp\PHPStan\CollectionMakeReturnTypeExtension::getClass1100.0%
Icawebdesign\Hibp\PHPStan\CollectionMakeReturnTypeExtension::isStaticMethodSupported1100.0%
Icawebdesign\Hibp\Password\PwnedPassword::__construct1100.0%
Icawebdesign\Hibp\Password\PwnedPassword::getRequest1100.0%
Icawebdesign\Hibp\Password\PwnedPassword::hashSnippet1100.0%
Icawebdesign\Hibp\Password\PwnedPassword::getRangeData1100.0%
Icawebdesign\Hibp\Password\PwnedPassword::getRangeDataWithPadding1100.0%
Icawebdesign\Hibp\Password\PwnedPasswordEntity::__construct1100.0%
Icawebdesign\Hibp\Password\PwnedPasswordEntity::toArray1100.0%
Icawebdesign\Hibp\Password\PwnedPasswordEntity::toJson1100.0%
Icawebdesign\Hibp\Paste\Paste::__construct1100.0%
Icawebdesign\Hibp\Paste\Paste::getRequest1100.0%