Classes

Coverage Distribution

Complexity

Insufficient Coverage

Class Coverage
App\Domain\Admin\Service\AdminBalanceUpdateService0%
App\Domain\Admin\Service\AdminFundManagementService0%
App\Domain\Admin\Service\AdminFundPerformanceService0%
App\Domain\Document\Service\PandaDocService0%
App\Domain\Email\EmailNotificationService0%
App\Domain\Funds\Data\FundCashflowRequestData0%
App\Domain\Funds\Data\FundData0%
App\Domain\Funds\Repository\FundCashflowRequestRepository0%
App\Domain\Funds\Repository\FundsRepository0%
App\Domain\Funds\Service\FundCashflowRequestAdminService0%
App\Domain\Funds\Service\FundCashflowRequestService0%
App\Domain\Funds\Service\FundImageStorage0%
App\Domain\Funds\Service\FundsCreator0%
App\Domain\Funds\Service\FundsFinder0%
App\Domain\Funds\Service\FundsUpdater0%
App\Domain\Funds\Service\InvestorFundsService0%
App\Domain\Statement\Repository\StatementRepository0%
App\Domain\Statement\Service\StatementService0%
App\Domain\SystemSettings\Service\SystemSettingsService0%
App\Domain\Transaction\Service\TransactionService3%
App\Domain\Auth\Data\TokenData14%
App\Domain\SystemSettings\Repository\SystemSettingsRepository41%
App\Domain\Admin\Repository\AdminRepository46%
App\Domain\SystemSettings\Data\SystemSettingData47%
App\Domain\ErrorLog\Data\ErrorLogData47%
App\Domain\Admin\Service\AdminService50%
App\Domain\Loan\Data\LoanData50%
App\Domain\Loan\Data\LoanEligibilityData52%
App\Domain\Transaction\Repository\TransactionRepository58%
App\Domain\ErrorLog\Repository\ErrorLogRepository80%
App\Domain\Audit\AuditService86%
App\Domain\Loan\Repository\LoanRepository87%
App\Domain\Auth\Repository\AuthRepository88%
App\Domain\Auth\Service\RegistrationService89%

Project Risks

Class CRAP
App\Domain\Funds\Repository\FundsRepository6320
App\Domain\Funds\Service\FundCashflowRequestAdminService1122
App\Domain\Funds\Repository\FundCashflowRequestRepository1056
App\Domain\Email\EmailNotificationService992
App\Domain\Funds\Service\FundImageStorage992
App\Domain\Admin\Service\AdminFundPerformanceService702
App\Domain\Document\Service\PandaDocService506
App\Domain\Admin\Service\AdminFundManagementService380
App\Domain\SystemSettings\Service\SystemSettingsService380
App\Domain\Admin\Service\AdminBalanceUpdateService342
App\Domain\Funds\Service\InvestorFundsService306
App\Domain\Funds\Service\FundCashflowRequestService240
App\Domain\Funds\Data\FundData210
App\Domain\Funds\Service\FundsUpdater210
App\Domain\Admin\Repository\AdminRepository204
App\Domain\Funds\Service\FundsCreator182
App\Domain\Transaction\Service\TransactionService118
App\Domain\Funds\Service\FundsFinder110
App\Domain\ErrorLog\Repository\ErrorLogRepository66
App\Domain\Auth\Service\RegistrationService59
App\Domain\Transaction\Repository\TransactionRepository57
App\Domain\SystemSettings\Repository\SystemSettingsRepository47
App\Domain\Funds\Data\FundCashflowRequestData42
App\Domain\Auth\Repository\AuthRepository40
App\Domain\Audit\AuditService39
App\Domain\Admin\Service\AdminService38
App\Domain\Loan\Repository\LoanRepository36
App\Domain\Loan\Data\LoanData18
App\Domain\ErrorLog\Data\ErrorLogData13
App\Domain\Statement\Repository\StatementRepository12
App\Domain\SystemSettings\Data\SystemSettingData11

Methods

Coverage Distribution

Complexity

Insufficient Coverage

Method Coverage
jsonSerialize0%
getAumHistory0%
getAllTransactions0%
getInvestorAllocations0%
__construct0%
adjustBalance0%
createTransaction0%
updateAllocationCurrentValue0%
getAdjustmentHistory0%
getInvestorAllocations0%
__construct0%
createFund0%
updateFund0%
publishFund0%
unpublishFund0%
archiveFund0%
getAllFunds0%
getPublishedFunds0%
getFundDetails0%
__construct0%
recordMonthlyPerformance0%
get12MonthPerformance0%
getAllFundsForPerformance0%
calculateYtdReturn0%
getInvestorAllocations0%
getAllTransactions0%
getAumHistory0%
logImpersonationEnd0%
toArray0%
__construct0%
getDocumentsForInvestor0%
getDocumentDetails0%
createSigningSession0%
resendDocument0%
createDocumentFromTemplate0%
getDocumentStatus0%
sendDocument0%
transformDocument0%
makeRequest0%
parseStatusCode0%
__construct0%
sendAddFundsRequestEmail0%
sendWithdrawalRequestEmail0%
sendRequestApprovedEmail0%
sendRequestRejectedEmail0%
sendDocumentSignatureRequestEmail0%
sendDocumentSignedEmail0%
sendMonthlyPerformanceEmail0%
sendStatementAvailableEmail0%
sendPasswordResetEmail0%
sendEmail0%
buildAddFundsInvestorEmail0%
buildAddFundsAdminEmail0%
buildWithdrawalInvestorEmail0%
buildWithdrawalAdminEmail0%
buildApprovalEmail0%
buildRejectionEmail0%
buildSignatureRequestEmail0%
buildDocumentSignedInvestorEmail0%
buildDocumentSignedAdminEmail0%
buildPerformanceEmail0%
buildStatementEmail0%
buildPasswordResetEmail0%
jsonSerialize0%
info0%
notice0%
warning0%
__construct0%
fromRow0%
toArray0%
__construct0%
fromRow0%
toArray0%
decodeInvestmentHighlights0%
__construct0%
create0%
findByUserId0%
findById0%
findByIdWithDetails0%
findByFilters0%
updateStatus0%
__construct0%
findFunds0%
createFund0%
findPublishedFunds0%
findPublishedFundById0%
findFundById0%
findUserFundAllocations0%
findFundPerformance0%
findUserDistributions0%
updateFund0%
archiveFund0%
findAllUserAllocations0%
createOrUpdateAllocation0%
decreaseAllocation0%
__construct0%
listRequests0%
approveRequest0%
rejectRequest0%
isValidDate0%
__construct0%
createAddFundsRequest0%
createWithdrawalRequest0%
getRequestsForUser0%
generateWireReference0%
__construct0%
fromDefaultProjectRoot0%
storeHeroImage0%
storeManagerPhoto0%
deleteManagedFileIfReplaced0%
store0%
resolveAbsoluteManagedPath0%
__construct0%
createFund0%
__construct0%
findFunds0%
__construct0%
updateFund0%
archiveFund0%
__construct0%
getPublishedFunds0%
getPublishedFundDetail0%
getUserAllocations0%
toArray0%
toArray0%
__construct0%
findByUserId0%
__construct0%
getStatementsForUser0%
getValue0%
jsonSerialize0%
findAll0%
update0%
__construct0%
getAll0%
getByKey0%
update0%
getLogLevelThreshold0%
updateLogLevelThreshold0%
validateSetting0%
create0%
getAccountStatus0%
getAccountAvailableBalance0%
createTransaction0%
getValidTypes0%
validateOptionalString40%
generateUniqueAccountNumber55%
validateRequiredString57%
generateUniqueAccountNumber69%
findAll69%
getUnresolvedCount75%
updateInvestor75%
generatePaymentSchedule75%
getAccountSummary80%
investorEmailExists80%
setContext81%
generateAccountNumber81%
checkEligibility81%
getTotalAccounts83%
getTotalBalance83%
activateLoan83%
registerComplete84%
freezeAccount85%
unfreezeAccount85%
getStats85%
emailExists85%
usernameExists85%
revokeRefreshToken85%
revokeAllUserTokens85%
cleanupExpiredTokens85%
updateLastLogin85%
incrementFailedLoginAttempts85%
emailExists85%
getConfig85%
getPaymentSchedule85%
getAccountBalance85%
getAllAccountsWithInvestors85%
emailExistsInUsers85%
emailExistsInInvestors85%
getAllUsers85%
generateTransactionDescription85%
getLogLevelThreshold85%
accountExists85%
getInvestorDetail87%
getPasswordHash87%
isAccountLocked87%
deleteByIds87%
findInvestorById87%
findInvestorByEmail87%
findInvestorByUserId87%
updateInvestorStatus87%
findById87%
getInvestorAccountId87%
logAccountStatusChange88%
updateInterestRate88%
updateLoanToValueRatio88%
getUserActivity88%
findUserByEmail88%
findUserByUsername88%
findUserById88%
findSessionByRefreshToken88%
getCountsByLevel88%
findActive88%
findPending88%
getAccountById88%
getUserById88%
findByKey88%
findById88%

Project Risks

Method CRAP
findFunds380
listRequests380
recordMonthlyPerformance342
findByFilters272
getAllTransactions156
createFund156
updateFund156
resolveAbsoluteManagedPath132
decreaseAllocation110
store110
findPublishedFunds90
findUserFundAllocations90
findFunds90
validateSetting90
createTransaction90
approveRequest72
getPublishedFunds72
makeRequest56
getPublishedFundDetail56
findAll44
updateFund42
fromRow42
decodeInvestmentHighlights42
createAddFundsRequest42
createWithdrawalRequest42
deleteManagedFileIfReplaced42
getAdjustmentHistory30
createFund30
sendEmail30
createOrUpdateAllocation30
getAllTransactions20
fromRow20
createFund20
findUserDistributions20
updateFund20
update20
getInvestorAllocations12
adjustBalance12
createTransaction12
updateAllocationCurrentValue12
getInvestorAllocations12
get12MonthPerformance12
calculateYtdReturn12
createDocumentFromTemplate12
parseStatusCode12
create12
findByUserId12
findById12
findByIdWithDetails12
updateStatus12
findPublishedFundById12
findFundById12
archiveFund12
findAllUserAllocations12
rejectRequest12
findAll12
update12
create12
getAccountStatus12
getAccountAvailableBalance12
registerComplete8
setContext6
getAumHistory6
getFundDetails6
transformDocument6
buildWithdrawalInvestorEmail6
buildWithdrawalAdminEmail6
buildApprovalEmail6
buildRejectionEmail6
findFundPerformance6
isValidDate6
findByUserId6
updateLogLevelThreshold6
validateRequiredString5
generateTransactionDescription5
updateInvestorStatus5
logAccountStatusChange5
validateOptionalString4
generateUniqueAccountNumber4
updateInvestor4
generateAccountNumber4
updateInterestRate4
updateLoanToValueRatio4
generateUniqueAccountNumber3
checkEligibility3
getTotalAccounts3
getTotalBalance3
freezeAccount3
unfreezeAccount3
getConfig3
getInvestorDetail3
getPasswordHash3
deleteByIds3
findInvestorById3
findInvestorByEmail3
findInvestorByUserId3
findById3
getInvestorAccountId3
findUserByEmail3
findUserByUsername3
findUserById3
findSessionByRefreshToken3
getCountsByLevel3
findActive3
findPending3
getAccountById3
getUserById3
findByKey3
findById3
getUnresolvedCount2
generatePaymentSchedule2
getAccountSummary2
investorEmailExists2
activateLoan2
getStats2
getUserActivity2
emailExists2
usernameExists2
revokeRefreshToken2
revokeAllUserTokens2
cleanupExpiredTokens2
updateLastLogin2
incrementFailedLoginAttempts2
isAccountLocked2
emailExists2
getPaymentSchedule2
getAccountBalance2
getAllAccountsWithInvestors2
emailExistsInUsers2
emailExistsInInvestors2
getAllUsers2
getLogLevelThreshold2
accountExists2