Classes

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

0% 20% 40% 60% 80% 100% 0 10 20 30 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Setup\Migration\Operations\OperationRecorder — Coverage: 67.3% | Lines: 52 | Complexity: 23 phpMyFAQ\Setup\Migration\Operations\SqlOperation — Coverage: 100.0% | Lines: 38 | Complexity: 15 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation — Coverage: 65.6% | Lines: 32 | Complexity: 19 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation — Coverage: 88.5% | Lines: 26 | Complexity: 11 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation — Coverage: 87.5% | Lines: 24 | Complexity: 15 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation — Coverage: 54.2% | Lines: 24 | Complexity: 10 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation — Coverage: 73.9% | Lines: 23 | Complexity: 12 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation — Coverage: 77.3% | Lines: 22 | Complexity: 12 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation — Coverage: 100.0% | Lines: 17 | Complexity: 6 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation — Coverage: 100.0% | Lines: 12 | Complexity: 7 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation — Coverage: 100.0% | Lines: 10 | Complexity: 6

Methods

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

0% 20% 40% 60% 80% 100% 0 5 10 15 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Setup\Migration\Operations\SqlOperation::getDescription — Coverage: 100.0% | Lines: 26 | Complexity: 9 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::formatValue — Coverage: 42.1% | Lines: 19 | Complexity: 12 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::execute — Coverage: 81.2% | Lines: 16 | Complexity: 7 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::createUser — Coverage: 0.0% | Lines: 11 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::execute — Coverage: 0.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::formatValue — Coverage: 66.7% | Lines: 9 | Complexity: 6 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::toArray — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::toArray — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::execute — Coverage: 0.0% | Lines: 6 | Complexity: 4 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getDescription — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::execute — Coverage: 0.0% | Lines: 5 | Complexity: 4 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationCounts — Coverage: 100.0% | Lines: 5 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\SqlOperation::toArray — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::execute — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSqlForDbType — Coverage: 0.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\SqlOperation::execute — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::execute — Coverage: 100.0% | Lines: 3 | Complexity: 3 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDescription — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::shortenPath — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDescription — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::shortenPath — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyFile — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyDirectory — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getSqlQueries — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getDescription — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getDescription — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSql — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::deleteConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::renameConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::updateConfig — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::grantPermission — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::insertFormInput — Coverage: 0.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addOperation — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::clear — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getValue — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getOldKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getNewKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::execute — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getKey — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getValue — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getSource — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDestination — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getSource — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDestination — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperations — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationsByType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::toArray — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\OperationRecorder::count — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionName — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getUserId — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\SqlOperation::getQuery — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getDescription — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

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

Method CRAP Coverage
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::formatValue39.9442.1%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::execute200.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::execute200.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::execute120.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getDescription9100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::formatValue7.3366.7%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::execute7.3281.2%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSqlForDbType60.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::execute3100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::shortenPath2100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::shortenPath2100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::execute2100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::createUser20.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::insertFormInput20.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getSqlQueries2100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationCounts2100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::execute2100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::getValue1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigAddOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigDeleteOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getOldKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::getNewKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::execute1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigRenameOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getKey1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::getValue1100.0%
phpMyFAQ\Setup\Migration\Operations\ConfigUpdateOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getSource1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::getDestination1100.0%
phpMyFAQ\Setup\Migration\Operations\DirectoryCopyOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getSource1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::getDestination1100.0%
phpMyFAQ\Setup\Migration\Operations\FileCopyOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\FormInputInsertOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addSql1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::deleteConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::renameConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::updateConfig1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyFile1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::copyDirectory1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::grantPermission1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::addOperation1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperations1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::getOperationsByType1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::clear1100.0%
phpMyFAQ\Setup\Migration\Operations\OperationRecorder::count1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionName1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getPermissionDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::getUserId1100.0%
phpMyFAQ\Setup\Migration\Operations\PermissionGrantOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::getQuery1100.0%
phpMyFAQ\Setup\Migration\Operations\SqlOperation::toArray1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::__construct1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getType1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::getDescription1100.0%
phpMyFAQ\Setup\Migration\Operations\UserCreateOperation::toArray1100.0%