Classes

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 5 10 15 20 Line Coverage (%) Cyclomatic Complexity App\Security\GoogleIdentityAuthenticator — Coverage: 78.4% | Lines: 37 | Complexity: 11 App\Security\GoogleAuthenticator — Coverage: 100.0% | Lines: 35 | Complexity: 9 App\Security\GitHubAuthenticator — Coverage: 100.0% | Lines: 34 | Complexity: 9 App\Security\GoogleApiTokenAuthenticator — Coverage: 67.6% | Lines: 34 | Complexity: 17 App\Security\LoginFormAuthenticator — Coverage: 100.0% | Lines: 23 | Complexity: 7 App\Security\FakeGoogleIdTokenVerifier — Coverage: 88.9% | Lines: 9 | Complexity: 5 App\Security\GoogleIdTokenVerifier — Coverage: 0.0% | Lines: 6 | Complexity: 4 App\Security\DevGoogleIdTokenVerifier — Coverage: 100.0% | Lines: 4 | Complexity: 4 App\Security\Voter\AgentStatVoter — Coverage: 100.0% | Lines: 3 | Complexity: 4

Sorted by descending CRAP index.

Methods

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 2 4 6 8 10 Line Coverage (%) Cyclomatic Complexity App\Security\GoogleApiTokenAuthenticator::authenticate — Coverage: 73.3% | Lines: 15 | Complexity: 8 App\Security\LoginFormAuthenticator::authenticate — Coverage: 100.0% | Lines: 15 | Complexity: 3 App\Security\GoogleAuthenticator::getUser — Coverage: 100.0% | Lines: 11 | Complexity: 2 App\Security\GoogleIdentityAuthenticator::authenticate — Coverage: 27.3% | Lines: 11 | Complexity: 4 App\Security\GoogleIdentityAuthenticator::getUser — Coverage: 100.0% | Lines: 11 | Complexity: 2 App\Security\GitHubAuthenticator::getUser — Coverage: 100.0% | Lines: 10 | Complexity: 2 App\Security\GoogleApiTokenAuthenticator::findUser — Coverage: 33.3% | Lines: 9 | Complexity: 3 App\Security\FakeGoogleIdTokenVerifier::verify — Coverage: 87.5% | Lines: 8 | Complexity: 3 App\Security\GitHubAuthenticator::authenticate — Coverage: 100.0% | Lines: 8 | Complexity: 1 App\Security\GoogleAuthenticator::authenticate — Coverage: 100.0% | Lines: 8 | Complexity: 1 App\Security\GitHubAuthenticator::onAuthenticationFailure — Coverage: 100.0% | Lines: 7 | Complexity: 1 App\Security\GoogleAuthenticator::onAuthenticationFailure — Coverage: 100.0% | Lines: 7 | Complexity: 1 App\Security\GoogleIdentityAuthenticator::onAuthenticationFailure — Coverage: 100.0% | Lines: 7 | Complexity: 1 App\Security\GitHubAuthenticator::onAuthenticationSuccess — Coverage: 100.0% | Lines: 6 | Complexity: 2 App\Security\GoogleAuthenticator::onAuthenticationSuccess — Coverage: 100.0% | Lines: 6 | Complexity: 2 App\Security\GoogleIdentityAuthenticator::onAuthenticationSuccess — Coverage: 100.0% | Lines: 6 | Complexity: 2 App\Security\LoginFormAuthenticator::onAuthenticationSuccess — Coverage: 100.0% | Lines: 6 | Complexity: 2 App\Security\GoogleApiTokenAuthenticator::unauthorized — Coverage: 100.0% | Lines: 5 | Complexity: 1 App\Security\GoogleIdTokenVerifier::verify — Coverage: 0.0% | Lines: 5 | Complexity: 3 App\Security\DevGoogleIdTokenVerifier::verify — Coverage: 100.0% | Lines: 3 | Complexity: 3 App\Security\Voter\AgentStatVoter::voteOnAttribute — Coverage: 100.0% | Lines: 2 | Complexity: 2 App\Security\DevGoogleIdTokenVerifier::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\FakeGoogleIdTokenVerifier::token — Coverage: 100.0% | Lines: 1 | Complexity: 2 App\Security\GitHubAuthenticator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GitHubAuthenticator::supports — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GitHubAuthenticator::getClient — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleApiTokenAuthenticator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleApiTokenAuthenticator::supports — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleApiTokenAuthenticator::onAuthenticationSuccess — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleApiTokenAuthenticator::onAuthenticationFailure — Coverage: 0.0% | Lines: 1 | Complexity: 1 App\Security\GoogleApiTokenAuthenticator::start — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleAuthenticator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleAuthenticator::supports — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleAuthenticator::getGoogleClient — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleIdTokenVerifier::__construct — Coverage: 0.0% | Lines: 1 | Complexity: 1 App\Security\GoogleIdentityAuthenticator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\GoogleIdentityAuthenticator::supports — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\LoginFormAuthenticator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\LoginFormAuthenticator::getLoginUrl — Coverage: 100.0% | Lines: 1 | Complexity: 1 App\Security\Voter\AgentStatVoter::supports — Coverage: 100.0% | Lines: 1 | Complexity: 2

Sorted by descending CRAP index.

Method CRAP Coverage
App\Security\GoogleIdTokenVerifier::verify120.0%
App\Security\GoogleIdentityAuthenticator::authenticate10.1527.3%
App\Security\GoogleApiTokenAuthenticator::authenticate9.2173.3%
App\Security\GoogleApiTokenAuthenticator::findUser5.6733.3%
App\Security\FakeGoogleIdTokenVerifier::verify3.0287.5%
App\Security\DevGoogleIdTokenVerifier::verify3100.0%
App\Security\LoginFormAuthenticator::authenticate3100.0%
App\Security\FakeGoogleIdTokenVerifier::token2100.0%
App\Security\GitHubAuthenticator::getUser2100.0%
App\Security\GitHubAuthenticator::onAuthenticationSuccess2100.0%
App\Security\GoogleApiTokenAuthenticator::onAuthenticationFailure20.0%
App\Security\GoogleAuthenticator::getUser2100.0%
App\Security\GoogleAuthenticator::onAuthenticationSuccess2100.0%
App\Security\GoogleIdTokenVerifier::__construct20.0%
App\Security\GoogleIdentityAuthenticator::onAuthenticationSuccess2100.0%
App\Security\GoogleIdentityAuthenticator::getUser2100.0%
App\Security\LoginFormAuthenticator::onAuthenticationSuccess2100.0%
App\Security\Voter\AgentStatVoter::supports2100.0%
App\Security\Voter\AgentStatVoter::voteOnAttribute2100.0%
App\Security\DevGoogleIdTokenVerifier::__construct1100.0%
App\Security\GitHubAuthenticator::__construct1100.0%
App\Security\GitHubAuthenticator::supports1100.0%
App\Security\GitHubAuthenticator::authenticate1100.0%
App\Security\GitHubAuthenticator::getClient1100.0%
App\Security\GitHubAuthenticator::onAuthenticationFailure1100.0%
App\Security\GoogleApiTokenAuthenticator::__construct1100.0%
App\Security\GoogleApiTokenAuthenticator::supports1100.0%
App\Security\GoogleApiTokenAuthenticator::onAuthenticationSuccess1100.0%
App\Security\GoogleApiTokenAuthenticator::start1100.0%
App\Security\GoogleApiTokenAuthenticator::unauthorized1100.0%
App\Security\GoogleAuthenticator::__construct1100.0%
App\Security\GoogleAuthenticator::supports1100.0%
App\Security\GoogleAuthenticator::authenticate1100.0%
App\Security\GoogleAuthenticator::getGoogleClient1100.0%
App\Security\GoogleAuthenticator::onAuthenticationFailure1100.0%
App\Security\GoogleIdentityAuthenticator::__construct1100.0%
App\Security\GoogleIdentityAuthenticator::supports1100.0%
App\Security\GoogleIdentityAuthenticator::onAuthenticationFailure1100.0%
App\Security\LoginFormAuthenticator::__construct1100.0%
App\Security\LoginFormAuthenticator::getLoginUrl1100.0%