Classes

Coverage Distribution

Complexity

Insufficient Coverage

Class Coverage
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\AddAnnotationIds0%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\DedupeStyles0%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\DisplaySpace0%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\HandleLinkNeighbours0%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\LiFixups0%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\TableFixups0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddMediaInfo0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddMetaData0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AnnotationDOMRangeBuilder0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\CompoundTemplateInfo0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ConvertOffsets0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\DOMPPTraverser0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\DOMRangeInfo0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\LangConverter0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MarkFosteredContent0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MigrateTemplateMarkerMetas0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MigrateTrailingNLs0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\Normalize0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\PWrapState0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ProcessEmbeddedDocs0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\RunExtensionProcessors0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\Section0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\UpdateTemplateOutput0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapAnnotations0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapSections0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapTemplates0%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\PWrap3%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddRedLinks4%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ProcessTreeBuilderFixups5%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\CleanUp36%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\DOMRangeBuilder59%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\UnpackDOMFragments60%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\AddLinkAttributes61%
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\Headings64%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapSectionsState78%
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ComputeDSR84%

Project Risks

Class CRAP
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\TableFixups29756
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddMediaInfo20880
Wikimedia\Parsoid\Wt2Html\DOM\Processors\DOMRangeBuilder3488
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\HandleLinkNeighbours3080
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\CleanUp2517
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddRedLinks2171
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MigrateTrailingNLs2162
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AnnotationDOMRangeBuilder2070
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MarkFosteredContent1980
Wikimedia\Parsoid\Wt2Html\DOM\Processors\PWrap1644
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\LiFixups1560
Wikimedia\Parsoid\Wt2Html\DOM\Processors\MigrateTemplateMarkerMetas1122
Wikimedia\Parsoid\Wt2Html\DOM\Processors\AddMetaData380
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapSectionsState351
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\DisplaySpace306
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ComputeDSR228
Wikimedia\Parsoid\Wt2Html\DOM\Processors\PWrapState210
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ProcessTreeBuilderFixups135
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ProcessEmbeddedDocs90
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\UnpackDOMFragments88
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\Headings73
Wikimedia\Parsoid\Wt2Html\DOM\Processors\UpdateTemplateOutput72
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\AddAnnotationIds42
Wikimedia\Parsoid\Wt2Html\DOM\Processors\RunExtensionProcessors30
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\AddLinkAttributes28
Wikimedia\Parsoid\Wt2Html\DOM\Handlers\DedupeStyles20
Wikimedia\Parsoid\Wt2Html\DOM\Processors\ConvertOffsets6
Wikimedia\Parsoid\Wt2Html\DOM\Processors\LangConverter6
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapAnnotations6
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapSections6
Wikimedia\Parsoid\Wt2Html\DOM\Processors\WrapTemplates6

Methods

Coverage Distribution

Complexity

Insufficient Coverage

Method Coverage
handler0%
stripMarkerMetas0%
isEmptyNode0%
handleEmptyElements0%
inNativeContent0%
markDiscardableDataParsoid0%
dedupe0%
getTextNodeDSRStart0%
insertDisplaySpace0%
leftHandler0%
rightHandler0%
textHandler0%
getLinkPrefix0%
getLinkTrail0%
findAndHandleNeighbour0%
handler0%
processHeadingContent0%
normalizeSectionName0%
getMigrationInfo0%
findLastMigratableNode0%
migrateTrailingSolTransparentLinks0%
isSimpleTemplatedSpan0%
fillDSRGap0%
hoistTransclusionInfo0%
collectAttributishContent0%
reparseTemplatedAttributes0%
stripTrailingPipe0%
transferSourceBetweenCells0%
mergeCells0%
convertAttribsToContent0%
reparseWithPreviousCell0%
shouldAbortAttr0%
pipeStatusInContent0%
getReparseType0%
handleTableCellTemplates0%
makeChildrenEncapWrappers0%
handleSize0%
parseTimeString0%
parseFrag0%
addSources0%
addTracks0%
getPath0%
handleAudio0%
handleVideo0%
handleImage0%
makeErr0%
handleErrors0%
copyOverAttribute0%
replaceAnchor0%
run0%
__construct0%
updateBodyClasslist0%
run0%
runInternal0%
splitByLinkCaption0%
getVariantTitles0%
isDefaultLinkCaption0%
__construct0%
wrapAnnotationsInTree0%
makeUneditable0%
moveRangeStart0%
moveRangeEnd0%
isExtended0%
setMetaDataMwForRange0%
matchMetaType0%
verifyTplInfoExpectation0%
getRangeId0%
updateDSRForFirstRangeNode0%
execute0%
__construct0%
run0%
__construct0%
addHandler0%
run0%
updateDSRForFirstRangeNode0%
stripStartMeta0%
introducesCycle0%
rangesOverlap0%
findFirstTemplatedNode0%
__construct0%
run0%
createNodeWithAttributes0%
removeTransclusionShadows0%
insertTransclusionMetas0%
moveFosteredAnnotations0%
getFosterContentHolder0%
processRecursively0%
run0%
migrateFirstChild0%
migrateLastChild0%
updateDepths0%
doMigrate0%
run0%
nodeEndsLineInWT0%
getTableParent0%
canMigrateNLOutOfNode0%
hasZeroWidthWT0%
doMigrateTrailingNLs0%
run0%
run0%
flatten0%
pWrapOptionalChildren0%
pWrapOptional0%
isSplittableTag0%
mergeRuns0%
split0%
pWrapDOM0%
pWrapInsideTag0%
__construct0%
reset0%
processOptionalNode0%
unwrapTrailingPWrapOptionalNodes0%
processNode0%
run0%
removeAutoInsertedEmptyTags0%
initialize0%
run0%
__construct0%
setId0%
setAboutId0%
addNode0%
addSection0%
hasNestedLevel0%
run0%
run0%
run0%
isEmptySpan0%
run0%
isHtmlHeading22%
getDOMRange23%
getStartConsideringFosteredContent28%
findTopLevelNonOverlappingRanges47%
findToplevelEnclosingRange50%
verifyTplInfoExpectation50%
getDSR52%
markMisnested55%
handler61%
encapsulateTemplates63%
findWrappableTemplateRangesRecursive63%
handler63%
recordTemplateInfo66%
isDeletableNode66%
migrateElements75%
run75%
fillDSRGap75%
findEnclosingRange77%
computeSectionMetadata77%
findEnclosingTemplateName77%
createNewSection78%
computeListEltWidth78%
finalCleanup79%
findEncapTarget80%
wrapSectionsInDOM81%
resolveTplExtSectionConflicts81%
collapseWrappers82%
computeNodeDSR83%
shouldOmitFromTOC83%
handleFirstRenderingTransparentNode83%
findTOCInsertionPoint84%
addSyntheticTOCMarker85%
computeATagWidth85%
run85%
run86%
computeTagWidths88%
lintTemplateArgInExtensionTag89%

Project Risks

Method CRAP
run3192
handleTableCellTemplates1332
handler756
runInternal552
findAndHandleNeighbour506
reparseWithPreviousCell506
migrateTrailingSolTransparentLinks462
doMigrate462
handleEmptyElements420
handleSize420
doMigrateTrailingNLs420
convertAttribsToContent342
processRecursively342
run306
replaceAnchor272
processHeadingContent240
getReparseType240
getVariantTitles240
hoistTransclusionInfo210
transferSourceBetweenCells210
pipeStatusInContent210
makeUneditable210
findTopLevelNonOverlappingRanges193
isEmptyNode182
collectAttributishContent156
canMigrateNLOutOfNode156
computeNodeDSR152
removeAutoInsertedEmptyTags132
encapsulateTemplates124
getDOMRange115
findLastMigratableNode110
stripMarkerMetas90
markDiscardableDataParsoid90
reparseTemplatedAttributes90
insertTransclusionMetas90
mergeRuns90
pWrapDOM90
getMigrationInfo72
processNode72
run72
getTextNodeDSRStart56
parseTimeString56
parseFrag56
addSources56
isDefaultLinkCaption56
wrapAnnotationsInTree56
moveFosteredAnnotations56
unwrapTrailingPWrapOptionalNodes56
findWrappableTemplateRangesRecursive51
handler44
handler42
mergeCells42
handleVideo42
handleImage42
execute42
updateDSRForFirstRangeNode42
removeTransclusionShadows42
hasZeroWidthWT42
pWrapOptional42
split42
wrapSectionsInDOM38
finalCleanup30
handleAudio30
handleErrors30
moveRangeEnd30
findFirstTemplatedNode30
getTableParent30
processOptionalNode30
isEmptySpan30
handler28
getDSR24
isHtmlHeading22
dedupe20
textHandler20
isSimpleTemplatedSpan20
stripTrailingPipe20
addTracks20
moveRangeStart20
run20
pWrapInsideTag20
addSyntheticTOCMarker16
computeTagWidths15
resolveTplExtSectionConflicts14
handleFirstRenderingTransparentNode12
computeSectionMetadata12
createNewSection12
inNativeContent12
getLinkPrefix12
getLinkTrail12
getPath12
splitByLinkCaption12
isExtended12
stripStartMeta12
introducesCycle12
rangesOverlap12
isDeletableNode12
migrateFirstChild12
migrateLastChild12
pWrapOptionalChildren12
initialize12
computeListEltWidth10
computeATagWidth10
getStartConsideringFosteredContent9
findEnclosingTemplateName8
collapseWrappers8
markMisnested7
findTOCInsertionPoint7
findEncapTarget6
insertDisplaySpace6
leftHandler6
rightHandler6
normalizeSectionName6
fillDSRGap6
shouldAbortAttr6
makeChildrenEncapWrappers6
run6
findToplevelEnclosingRange6
run6
getFosterContentHolder6
updateDepths6
nodeEndsLineInWT6
flatten6
run6
run6
run6
run6
recordTemplateInfo5
findEnclosingRange5
lintTemplateArgInExtensionTag5
migrateElements4
fillDSRGap4
shouldOmitFromTOC3
run3
verifyTplInfoExpectation2
run2
run2