Classes

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

0% 20% 40% 60% 80% 100% 0 5 10 15 20 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository — Coverage: 100.0% | Lines: 47 | Complexity: 15 phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository — Coverage: 100.0% | Lines: 38 | Complexity: 10 phpMyFAQ\Auth\OAuth2\Repository\ClientRepository — Coverage: 97.4% | Lines: 38 | Complexity: 13 phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository — Coverage: 100.0% | Lines: 28 | Complexity: 7 phpMyFAQ\Auth\OAuth2\Repository\UserRepository — Coverage: 18.2% | Lines: 22 | Complexity: 8 phpMyFAQ\Auth\OAuth2\Repository\ScopeRepository — Coverage: 94.4% | Lines: 18 | Complexity: 5 phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository — Coverage: 100.0% | Lines: 3 | Complexity: 3

Methods

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

0% 20% 40% 60% 80% 100% 0 2 4 6 8 10 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Auth\OAuth2\Repository\ClientRepository::getClientEntity — Coverage: 95.8% | Lines: 24 | Complexity: 5 phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::persistNewAccessToken — Coverage: 100.0% | Lines: 22 | Complexity: 6 phpMyFAQ\Auth\OAuth2\Repository\UserRepository::getUserEntityByUserCredentials — Coverage: 18.2% | Lines: 22 | Complexity: 8 phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::persistNewAuthCode — Coverage: 100.0% | Lines: 21 | Complexity: 5 phpMyFAQ\Auth\OAuth2\Repository\ScopeRepository::getScopeEntityByIdentifier — Coverage: 94.1% | Lines: 17 | Complexity: 4 phpMyFAQ\Auth\OAuth2\Repository\ClientRepository::validateClient — Coverage: 100.0% | Lines: 14 | Complexity: 8 phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::isAccessTokenRevoked — Coverage: 100.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::isAuthCodeRevoked — Coverage: 100.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::persistNewRefreshToken — Coverage: 100.0% | Lines: 11 | Complexity: 2 phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::isRefreshTokenRevoked — Coverage: 100.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::getNewToken — Coverage: 100.0% | Lines: 9 | Complexity: 5 phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::revokeAccessToken — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::revokeAuthCode — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::revokeRefreshToken — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::db — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::table — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::getNewAuthCode — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::getNewRefreshToken — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Auth\OAuth2\Repository\ScopeRepository::finalizeScopes — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

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

Method CRAP Coverage
phpMyFAQ\Auth\OAuth2\Repository\UserRepository::getUserEntityByUserCredentials43.0518.2%
phpMyFAQ\Auth\OAuth2\Repository\ClientRepository::validateClient8100.0%
phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::persistNewAccessToken6100.0%
phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::getNewToken5100.0%
phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::persistNewAuthCode5100.0%
phpMyFAQ\Auth\OAuth2\Repository\ClientRepository::getClientEntity595.8%
phpMyFAQ\Auth\OAuth2\Repository\ScopeRepository::getScopeEntityByIdentifier4.0094.1%
phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::isAccessTokenRevoked3100.0%
phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::isAuthCodeRevoked3100.0%
phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::isRefreshTokenRevoked3100.0%
phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::persistNewRefreshToken2100.0%
phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::__construct1100.0%
phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::db1100.0%
phpMyFAQ\Auth\OAuth2\Repository\AbstractRepository::table1100.0%
phpMyFAQ\Auth\OAuth2\Repository\AccessTokenRepository::revokeAccessToken1100.0%
phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::getNewAuthCode1100.0%
phpMyFAQ\Auth\OAuth2\Repository\AuthCodeRepository::revokeAuthCode1100.0%
phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::getNewRefreshToken1100.0%
phpMyFAQ\Auth\OAuth2\Repository\RefreshTokenRepository::revokeRefreshToken1100.0%
phpMyFAQ\Auth\OAuth2\Repository\ScopeRepository::finalizeScopes1100.0%