Classes

Coverage Distribution

Complexity

Insufficient Coverage

Class Coverage
Flow\Data\Compactor\FeatureCompactor0%
Flow\Data\Storage\PostRevisionStorage0%
Flow\Data\ObjectManager0%
Flow\Data\Pager\HistoryPager0%
Flow\Data\Pager\PagerPage0%
Flow\Data\Storage\BasicDbStorage0%
Flow\Data\Storage\BoardHistoryStorage0%
Flow\Data\Storage\HeaderRevisionStorage0%
Flow\Data\Storage\PostRevisionBoardHistoryStorage0%
Flow\Data\Storage\PostRevisionTopicHistoryStorage0%
Flow\Data\Mapper\BasicObjectMapper0%
Flow\Data\Storage\PostSummaryRevisionBoardHistoryStorage0%
Flow\Data\Storage\PostSummaryRevisionStorage0%
Flow\Data\Storage\TopicListStorage0%
Flow\Data\Utils\Merger0%
Flow\Data\Utils\MultiDimArray0%
Flow\Data\Utils\RecentChangeFactory0%
Flow\Data\Utils\ResultDuplicator0%
Flow\Data\Utils\SortRevisionsByRevisionId0%
Flow\Data\Compactor\ShallowCompactor0%
Flow\Data\Utils\UserMerger0%
Flow\Data\Listener\AbstractListener0%
Flow\Data\Listener\DeferredInsertLifecycleHandler0%
Flow\Data\Index\PostRevisionTopicHistoryIndex0%
Flow\Data\Index\PostSummaryRevisionBoardHistoryIndex0%
Flow\Data\FlowObjectCache0%
Flow\Data\Index\UniqueFeatureIndex0%
Flow\Data\Listener\WorkflowTopicListListener0%
Flow\Data\Listener\AbstractTopicInsertListener0%
Flow\Data\Listener\EditCountListener0%
Flow\Data\Index\BoardHistoryIndex0%
Flow\Data\Listener\ImmediateWatchTopicListener0%
Flow\Data\Listener\ModerationLoggingListener0%
Flow\Data\Listener\NotificationListener0%
Flow\Data\Listener\ReferenceRecorder0%
Flow\Data\Listener\TopicPageCreationListener0%
Flow\Data\Index\PostRevisionBoardHistoryIndex0%
Flow\Data\Storage\DbStorage21%
Flow\Data\ObjectLocator31%
Flow\Data\Index\TopKIndex31%
Flow\Data\ManagerGroup35%
Flow\Data\Index\FeatureIndex37%
Flow\Data\Mapper\CachingObjectMapper39%
Flow\Data\Storage\RevisionStorage62%
Flow\Data\Utils\SortArrayByKeys81%

Methods

Coverage Distribution

Complexity

Insufficient Coverage

Method Coverage
__construct0%
insert0%
splitFromRow0%
__construct0%
doQuery0%
setIncludeOffset0%
formatRow0%
getQueryInfo0%
getIndexField0%
__construct0%
getPager0%
getResults0%
getPagingLinksOptions0%
__construct0%
update0%
makeArray0%
remove0%
find0%
doFindQuery0%
fallbackFindMulti0%
findMulti0%
getPrimaryKeyColumns0%
findMulti0%
validate0%
getPrimaryKeyColumns0%
insert0%
update0%
remove0%
calcUpdatesWithoutValidation0%
arrayEquals0%
getFieldRegexFragment0%
clear0%
model0%
get0%
normalizeRow0%
compactRow0%
find0%
found0%
foundMulti0%
getPrimaryKeyColumns0%
get0%
getMulti0%
got0%
gotMulti0%
load0%
load0%
__construct0%
clear0%
merge0%
cachePurge0%
put0%
multiPut0%
remove0%
multiRemove0%
serializeOffset0%
insert0%
update0%
updateSingle0%
preprocessNestedSqlArray0%
validateOptions0%
normalizeRow0%
newFromRow0%
getPrimaryKeyColumns0%
validate0%
doFindQuery0%
insert0%
merge0%
mergeMulti0%
all0%
getIterator0%
offsetSet0%
offsetGet0%
offsetUnset0%
offsetExists0%
__construct0%
insert0%
add0%
merge0%
getUniqueQueries0%
getResult0%
sortResult0%
__construct0%
__invoke0%
__construct0%
getAccountFields0%
finalizeMerge0%
purgeTable0%
loadFromTreeRevision0%
remove0%
fallbackFindMulti0%
validate0%
findDescendantQuery0%
getRevType0%
find0%
__construct0%
joinTable0%
joinField0%
getRevType0%
insertRelated0%
updateRelated0%
removeRelated0%
__construct0%
find0%
findMulti0%
getPrimaryKeyColumns0%
addRevTypeToQuery0%
insert0%
update0%
remove0%
validate0%
find0%
getRevType0%
joinTable0%
joinField0%
insertRelated0%
removeRelated0%
find0%
findInternal0%
clear0%
getMapper0%
get0%
findTopicId0%
onAfterClear0%
found0%
foundMulti0%
backingStoreFindMulti0%
findTopicId0%
__construct0%
cachePurge0%
onAfterInsert0%
onAfterUpdate0%
onAfterRemove0%
findTopicId0%
backingStoreFindMulti0%
canAnswer0%
onAfterRemove0%
getOffsetFromOffsetValue0%
compareRowToOffsetValue0%
removeFromIndex0%
queryOptions0%
getLimit0%
queryOptions0%
removeFromIndex0%
fromStorageRow0%
onAfterRemove0%
onAfterLoad0%
onAfterInsert0%
onAfterClear0%
onAfterLoad0%
onAfterUpdate0%
getUsersToSubscribe0%
delete0%
compactRows0%
expandCacheResult0%
__construct0%
compactRow0%
compactRows0%
getShallow0%
getResultDuplicator0%
expandCacheResult0%
__construct0%
get0%
getMulti0%
set0%
makeGlobalKey0%
onAfterInsert0%
__construct0%
findMulti0%
backingStoreFindMulti0%
cachePurge0%
onAfterInsert0%
onAfterUpdate0%
onAfterRemove0%
findTopicListId0%
canAnswer0%
getSort0%
getOrder0%
cachePurge0%
onAfterInsert0%
onAfterUpdate0%
__construct0%
put0%
getReferencesFromRevisionContent0%
getExistingReferences0%
referencesDifference0%
onAfterInsert0%
__construct0%
onAfterLoad0%
onAfterInsert0%
onAfterClear0%
__construct0%
getTopicListEntry0%
onAfterInsert0%
onAfterUpdate0%
multiMethod0%
isHidden0%
multiPut0%
multiRemove0%
call0%
get0%
getMulti0%
find0%
findMulti0%
found0%
foundMulti0%
__construct0%
model0%
toStorageRow0%
collectTopicRevisions0%
loadFromRevision0%
onAfterInsert0%
notifyPostChange0%
__construct0%
__construct0%
onAfterInsertExpectedChange0%
getCurrentUser0%
__construct0%
onAfterInsert0%
log0%
__construct0%
onAfterClear0%
onAfterLoad0%
onAfterInsert0%
onAfterRemove0%
__construct0%
calculateChangesFromTopic0%
onAfterUpdate0%
calculateChangesFromExisting0%
onAfterInsert0%
onAfterLoad0%
convertToDbQueries26%
getOffsetLimit30%
toStorageRow40%
findMultiInternal47%
getIndexFor52%
fromStorageRow53%
findMulti57%
convertToDbOptions58%
getStorage66%
getRcTitle66%
cachedDbId66%
getCacheKeys70%
insertExternalStore70%
buildCompositeInCondition70%
findMulti75%
compare75%
isAllowed75%
findMulti80%
getPage80%
cacheKey83%
isUpdatingExistingRevisionContentAllowed84%
mergeExternalContent87%
__construct88%
calcUpdates88%

Project Risks

Method CRAP
onAfterInsert342
validateOptions240
mergeMulti132
getReferencesFromRevisionContent132
expandCacheResult110
doQuery110
foundMulti110
canAnswer72
getOffsetLimit69
offsetUnset56
merge56
findMulti56
referencesDifference56
getMulti56
convertToDbQueries49
gotMulti42
onAfterInsert42
serializeOffset42
foundMulti42
insertRelated42
findMultiInternal37
calcUpdatesWithoutValidation30
calculateChangesFromTopic30
onAfterInsert30
purgeTable30
multiPut30
compactRow30
compareRowToOffsetValue30
getOffsetFromOffsetValue30
onAfterUpdate30
canAnswer30
offsetGet20
backingStoreFindMulti20
insert20
find20
findTopicListId20
findInternal20
insert20
offsetExists20
__invoke20
add20
getUsersToSubscribe20
notifyPostChange20
finalizeMerge20
findMulti15
getIndexFor14
remove12
getAccountFields12
updateSingle12
getOrder12
__construct12
update12
getResultDuplicator12
findMulti12
preprocessNestedSqlArray12
sortResult12
findMulti12
insert12
offsetSet12
cachePurge12
splitFromRow12
findTopicId12
collectTopicRevisions12
onAfterInsert12
onAfterInsertExpectedChange12
multiMethod12
log12
get12
getPage11
findMulti9
convertToDbOptions8
compare7
toStorageRow7
fromStorageRow7
find6
addRevTypeToQuery6
onAfterInsert6
fallbackFindMulti6
find6
find6
load6
findMulti6
validate6
backingStoreFindMulti6
expandCacheResult6
isHidden6
__construct6
merge6
onAfterInsert6
compactRow6
__construct6
updateRelated6
find6
queryOptions6
onAfterRemove6
clear6
merge6
get6
multiRemove6
onAfterInsert6
find6
update6
arrayEquals6
makeArray6
cachePurge6
__construct6
insert6
loadFromRevision6
remove6
getTopicListEntry6
fallbackFindMulti6
onAfterInsert6
validate6
onAfterUpdate6
insertExternalStore5
cacheKey5
mergeExternalContent5
calcUpdates5
buildCompositeInCondition4
__construct4
getCacheKeys3
isUpdatingExistingRevisionContentAllowed3
cachedDbId2
getStorage2
getRcTitle2
findMulti2
isAllowed2