Classes

Coverage Distribution

Complexity

Insufficient Coverage

Class Coverage
MediaWiki\TimedMediaHandler\ApiQueryVideoInfo0%
MediaWiki\TimedMediaHandler\ApiTimedText0%
MediaWiki\TimedMediaHandler\ApiTranscodeReset0%
MediaWiki\TimedMediaHandler\ApiTranscodeStatus0%
MediaWiki\TimedMediaHandler\HLS\MP4Box0%
MediaWiki\TimedMediaHandler\HLS\MP4Reader0%
MediaWiki\TimedMediaHandler\HLS\OwningStreamReader0%
MediaWiki\TimedMediaHandler\HLS\ShortReadException0%
MediaWiki\TimedMediaHandler\HLS\StreamReader0%
MediaWiki\TimedMediaHandler\Handlers\ID3Handler\ID3Handler0%
MediaWiki\TimedMediaHandler\Handlers\MP4Handler\MP4Handler0%
MediaWiki\TimedMediaHandler\Handlers\MPEGHandler\MPEGHandler0%
File_Ogg0%
File_Ogg_Bitstream0%
File_Ogg_Flac0%
File_Ogg_Media0%
File_Ogg_Opus0%
File_Ogg_Speex0%
File_Ogg_Theora0%
File_Ogg_Vorbis0%
MediaWiki\TimedMediaHandler\InstallerHooks0%
MediaWiki\TimedMediaHandler\RegistrationCallback0%
MediaWiki\TimedMediaHandler\SpecialOrphanedTimedText0%
MediaWiki\TimedMediaHandler\SpecialTranscodeStatistics0%
MediaWiki\TimedMediaHandler\TimedMediaHandlerInit0%
MediaWiki\TimedMediaHandler\TimedMediaIframeOutput0%
MediaWiki\TimedMediaHandler\TimedMediaThumbnail0%
MediaWiki\TimedMediaHandler\TimedText\DOM\Cue0%
MediaWiki\TimedMediaHandler\TimedText\DOM\InternalNode0%
MediaWiki\TimedMediaHandler\TimedText\DOM\TextNode0%
MediaWiki\TimedMediaHandler\TimedText\ParseError0%
MediaWiki\TimedMediaHandler\TimedText\VttWriter0%
MediaWiki\TimedMediaHandler\TimedTextPage0%
MediaWiki\TimedMediaHandler\TranscodableChecker0%
MediaWiki\TimedMediaHandler\TranscodeStatusTable0%
MediaWiki\TimedMediaHandler\WebVideoTranscode\WebVideoTranscode0%
MediaWiki\TimedMediaHandler\WebVideoTranscode\WebVideoTranscodeJob0%
TimedMediaMaintenance0%
CleanupOrphanedTranscodes0%
ConvertSubtitles0%
DumpMetadata0%
MigrateTranscodeStates0%
RebuildPlaylists0%
RequeueTranscodes0%
TranscodeReport0%
MediaWiki\TimedMediaHandler\TimedText\SrtReader1%
MediaWiki\TimedMediaHandler\TimedText\SrtWriter11%
MediaWiki\TimedMediaHandler\Hooks13%
MediaWiki\TimedMediaHandler\TimedMediaTransformOutput18%
MediaWiki\TimedMediaHandler\Handlers\WAVHandler\WAVHandler23%
MediaWiki\TimedMediaHandler\TimedMediaHandler25%
MediaWiki\TimedMediaHandler\Handlers\FLACHandler\FLACHandler31%
MediaWiki\TimedMediaHandler\Handlers\MP3Handler\MP3Handler31%
MediaWiki\TimedMediaHandler\Handlers\MIDIHandler\MIDIHandler38%
MediaWiki\TimedMediaHandler\Handlers\TextHandler\TextHandler39%
MediaWiki\TimedMediaHandler\MediaWikiEventIngress\PageEventIngress40%
MediaWiki\TimedMediaHandler\HLS\MP3Segmenter50%
MediaWiki\TimedMediaHandler\Handlers\OggHandler\OggHandler59%
MediaWiki\TimedMediaHandler\Handlers\WebMHandler\WebMHandler71%
MediaWiki\TimedMediaHandler\WebVideoTranscode\TranscodePresets76%

Project Risks

Class CRAP
MediaWiki\TimedMediaHandler\WebVideoTranscode\WebVideoTranscodeJob20022
MediaWiki\TimedMediaHandler\WebVideoTranscode\WebVideoTranscode17030
MediaWiki\TimedMediaHandler\TimedText\SrtReader12881
MediaWiki\TimedMediaHandler\TimedMediaTransformOutput5067
File_Ogg4556
MediaWiki\TimedMediaHandler\TimedTextPage4290
MediaWiki\TimedMediaHandler\TimedMediaHandler3595
File_Ogg_Vorbis1722
MediaWiki\TimedMediaHandler\Hooks1600
TranscodeReport1482
MediaWiki\TimedMediaHandler\TimedMediaThumbnail1332
MediaWiki\TimedMediaHandler\Handlers\TextHandler\TextHandler874
RequeueTranscodes812
MediaWiki\TimedMediaHandler\ApiTimedText702
MediaWiki\TimedMediaHandler\SpecialOrphanedTimedText702
MediaWiki\TimedMediaHandler\TranscodeStatusTable702
TimedMediaMaintenance702
MediaWiki\TimedMediaHandler\ApiTranscodeReset650
File_Ogg_Theora600
MediaWiki\TimedMediaHandler\SpecialTranscodeStatistics552
File_Ogg_Media506
MediaWiki\TimedMediaHandler\Handlers\OggHandler\OggHandler367
MediaWiki\TimedMediaHandler\Handlers\ID3Handler\ID3Handler306
MediaWiki\TimedMediaHandler\Handlers\MP4Handler\MP4Handler306
MediaWiki\TimedMediaHandler\TranscodableChecker272
MediaWiki\TimedMediaHandler\ApiQueryVideoInfo240
MediaWiki\TimedMediaHandler\Handlers\MPEGHandler\MPEGHandler240
MediaWiki\TimedMediaHandler\HLS\MP4Reader182
MediaWiki\TimedMediaHandler\HLS\StreamReader182
File_Ogg_Flac182
MediaWiki\TimedMediaHandler\TimedText\VttWriter182
MediaWiki\TimedMediaHandler\Handlers\WebMHandler\WebMHandler158
ConvertSubtitles156
MediaWiki\TimedMediaHandler\TimedText\SrtWriter150
File_Ogg_Opus132
MediaWiki\TimedMediaHandler\Handlers\MIDIHandler\MIDIHandler93
MediaWiki\TimedMediaHandler\ApiTranscodeStatus90
MediaWiki\TimedMediaHandler\TimedMediaIframeOutput90
MediaWiki\TimedMediaHandler\HLS\MP3Segmenter86
MediaWiki\TimedMediaHandler\Handlers\WAVHandler\WAVHandler76
File_Ogg_Speex56
MigrateTranscodeStates56
MediaWiki\TimedMediaHandler\TimedMediaHandlerInit42
MediaWiki\TimedMediaHandler\MediaWikiEventIngress\PageEventIngress30
MediaWiki\TimedMediaHandler\HLS\MP4Box30
CleanupOrphanedTranscodes30
DumpMetadata30
MediaWiki\TimedMediaHandler\Handlers\FLACHandler\FLACHandler28
MediaWiki\TimedMediaHandler\Handlers\MP3Handler\MP3Handler28
RebuildPlaylists20
MediaWiki\TimedMediaHandler\WebVideoTranscode\TranscodePresets15
MediaWiki\TimedMediaHandler\RegistrationCallback12

Methods

Coverage Distribution

Complexity

Insufficient Coverage

Method Coverage
__construct0%
getInfo0%
getPropertyMessages0%
getExamplesMessages0%
getHelpUrls0%
getAllowedParams0%
__construct0%
isInternal0%
getCustomPrinter0%
execute0%
findTimedText0%
convertTimedText0%
getAllowedParams0%
getExamplesMessages0%
getHelpUrls0%
__construct0%
execute0%
checkTimeSinceLastReset0%
getStateResetTime0%
mustBePosted0%
isWriteMode0%
getAllowedParams0%
needsToken0%
getExamplesMessages0%
__construct0%
execute0%
getCacheMode0%
getAllowedParams0%
getExamplesMessages0%
rewrite0%
timestampTag0%
__construct0%
end0%
remaining0%
read0%
readInt0%
read640%
read320%
read240%
read160%
read80%
readType0%
readBox0%
findBox0%
expectBox0%
__destruct0%
rewrite0%
__construct0%
__construct0%
tell0%
pos0%
seek0%
read0%
write0%
getMetadataType0%
getShortDesc0%
getLongDesc0%
getID30%
getSizeAndMetadata0%
getSizeFromMetadata0%
isFileMetadataValid0%
getBitRate0%
getLength0%
getFramerate0%
isInterlaced0%
hasVideo0%
hasAudio0%
getAudioChannels0%
getMetadataType0%
verifyUpload0%
getShortDesc0%
getLongDesc0%
getMetadataType0%
getShortDesc0%
getLongDesc0%
getID30%
getSizeFromMetadata0%
getMetadataType0%
getWebType0%
getStreamTypes0%
getShortDesc0%
getLongDesc0%
getMetadataType0%
getWebType0%
getStreamTypes0%
getSizeFromMetadata0%
getShortDesc0%
getLongDesc0%
__construct0%
_littleEndianBin2Hex0%
_readBigEndian0%
_readLittleEndian0%
_decodePageHeader0%
_splitStreams0%
getStream0%
listStreams0%
getStartOffset0%
getLength0%
__construct0%
getSerial0%
getSize0%
getGroup0%
__construct0%
getSecondsFromGranulePos0%
getType0%
_decodeHeader0%
getHeader0%
_decodeCommentsHeader0%
getIdentificationString0%
_decodeCommonHeader0%
_decodeBareCommentsHeader0%
getCommentList0%
getField0%
getComments0%
getVendor0%
getHeader0%
getLength0%
getStartOffset0%
__construct0%
getSecondsFromGranulePos0%
getType0%
_decodeHeader0%
getHeader0%
getSampleRate0%
_decodeCommentsHeader0%
__construct0%
getType0%
_decodeHeader0%
getHeader0%
_decodeCommentsHeader0%
__construct0%
getSecondsFromGranulePos0%
getIdentificationString0%
_decodeIdentificationHeader0%
getHeader0%
getType0%
_decodeCommentsHeader0%
__construct0%
getSecondsFromGranulePos0%
getType0%
_decodeIdentificationHeader0%
_decodeCommentsHeader0%
getIdentificationString0%
getEncoderVersion0%
getSampleRate0%
getBitrates0%
getBitrate0%
getLength0%
getStartOffset0%
isMono0%
isStereo0%
isQuadrophonic0%
getTitle0%
getVersion0%
getAlbum0%
getTrackNumber0%
getArtist0%
getPerformer0%
getCopyright0%
getLicense0%
getOrganization0%
getDescription0%
getGenre0%
getDate0%
getLocation0%
getContact0%
getIsrc0%
getHeader0%
isFileMetadataValid0%
formatMetadata0%
getMetadataType0%
getOffset0%
getLength0%
getContentHeaders0%
getFramerate0%
getShortDesc0%
getLongDesc0%
getBitRate0%
getTracks0%
getTimedTextNamespace0%
getTextPagesFromDb0%
getRemoteTextPagesQuery0%
getRemoteTextSources0%
getExistingSources0%
getTextTracksFromData0%
getMetadataType0%
verifyUpload0%
getShortDesc0%
getLongDesc0%
getMetadataType0%
getShortDesc0%
getLongDesc0%
formatMetadata0%
__construct0%
onCanonicalNamespaces0%
onImageOpenShowImageInlineBefore0%
onImagePageFileHistoryLine0%
onImagePageHooks0%
onArticleFromTitle0%
onArticleContentOnDiff0%
isTimedMediaHandlerTitle0%
onImagePageAfterImageLinks0%
onFileUpload0%
onTitleMove0%
onFileDeleteComplete0%
onFileUndeleteComplete0%
onArticlePurge0%
onParserTestGlobals0%
onBeforePageDisplay0%
onwgQueryPages0%
onLoadExtensionSchemaUpdates0%
createTimedTextPage0%
register0%
__construct0%
sortDescending0%
isExpensive0%
execute0%
isCacheable0%
isListed0%
canExecuteQuery0%
canExecute0%
getQueryInfo0%
getOrderFields0%
existenceCheck0%
getCorrespondingFile0%
getGroupName0%
preprocessResults0%
formatResult0%
__construct0%
getRestriction0%
execute0%
renderState0%
getTranscodes0%
getTranscodesTable0%
getStateCounts0%
getGroupName0%
getParamMap0%
makeParamString0%
normaliseParams0%
getSteppedThumbWidth0%
parserTransformHook0%
getThumbType0%
isAudio0%
doTransform0%
mustRender0%
getOffset0%
getLength0%
getDimensionsString0%
getFramerate0%
isInterlaced0%
getBitRate0%
onMediaWikiServices0%
initNamespace0%
__construct0%
onMediaWikiPerformAction0%
outputIframe0%
__construct0%
get0%
tryFfmpegThumb0%
ffmpegExitCodeMessage0%
resizeThumb0%
getThumbTime0%
getTextHandler0%
getUrl0%
getPath0%
getPlayerHeight0%
getTagName0%
toHtml0%
htmlTagSet0%
getHtmlMediaTagOutput0%
getPoster0%
getMediaAttr0%
getMediaSources0%
getTemporalUrlHash0%
resetSerialForTest0%
getAPIData0%
appendNode0%
appendText0%
appendNode0%
__construct0%
appendText0%
__construct0%
getLine0%
getInput0%
getError0%
getCues0%
getErrors0%
saveState0%
restoreState0%
discardState0%
eof0%
peek0%
consume0%
consumeWhile0%
consumeLine0%
consumeAlphanum0%
consumeHexDigits0%
consumeDigits0%
consumeSpace0%
consumeWhitespace0%
consumePlaintext0%
consumeEntity0%
consumeTimestamp0%
consumeArrow0%
recordError0%
pushStack0%
popStack0%
parse0%
stateStart0%
stateTimestamp0%
stateTextStart0%
stateText0%
stateTextNewline0%
stateTagStart0%
stateTagMain0%
stateTagSelfClose0%
stateTagCloseMain0%
stateTagSpace0%
stateTagEnd0%
stateTextEnd0%
stateCueDone0%
stateUnexpectedEnd0%
formatCue0%
formatTimestamp0%
formatText0%
formatNodes0%
formatNode0%
toVtt0%
write0%
convertNodes0%
tagFor0%
__construct0%
view0%
renderOutput0%
doRedirectToPageForm0%
getExistingSourceOptions0%
onSubmitEdit0%
onSubmit0%
getErrorsAndWarnings0%
getFileHTML0%
getTimedTextHTML0%
getCorrespondingFile0%
getCorrespondingFileTitle0%
getTimedTextFormat0%
isActualTimedTextTitle0%
getLanguageKey0%
__construct0%
isTranscodableTitle0%
isTranscodableFile0%
__construct0%
getHTML0%
codecFromTranscodeKey0%
getTranscodesTable0%
transcodeRowsToTemplateParams0%
getSourceUrl0%
getTranscodeDuration0%
getTranscodeBitrate0%
getStatusMsg0%
enabledVideoTranscodes0%
enabledAudioTranscodes0%
transcodePresets0%
getDerivativeFilePath0%
getTranscodeFileBaseName0%
getTranscodedUrlForFile0%
getTargetEncodeFile0%
getMaxSizeWebStream0%
getProjectedFileSize0%
getSources0%
getRemoteSources0%
getLocalSources0%
isTranscodeKeyPlayable0%
isTranscodeReady0%
clearTranscodeCache0%
getTranscodeState0%
removeTranscodes0%
invalidatePagesWithFile0%
addSourceIfReady0%
getPrimarySourceAttributes0%
getDerivativeSourceAttributes0%
startJobQueue0%
updateStreamingManifests0%
cleanupTranscodes0%
isTranscodeEnabled0%
updateJobQueue0%
isTranscodePrioritized0%
getQueueSize0%
getMaxSizeTransform0%
isTargetLargerThanFile0%
isSmallestTranscodeForCodec0%
getMaxSize0%
isBaseMediaFormat0%
expandRate0%
cleanupOrphanedTranscodes0%
__construct0%
getConfig0%
output0%
getFile0%
getTargetEncodePath0%
getTargetPlaylistPath0%
fileTarget0%
purgeTargetEncodeFile0%
setTranscodeError0%
run0%
getCommand0%
useScript0%
ffmpegEncode0%
scaleRate0%
expandRate0%
effectiveFrameRate0%
fractionToFloat0%
frameRate0%
ffmpegAddH264VideoOptions0%
ffmpegAddMPEG4VideoOptions0%
ffmpegAddGenericVideoOptions0%
ffmpegAddVideoSizeOptions0%
ffmpegAddWebmVideoOptions0%
isInterlaced0%
shouldFrameDouble0%
ffmpegAddDeinterlaceOptions0%
ffmpegAddAudioOptions0%
midiToAudioEncode0%
__construct0%
execute0%
__construct0%
execute0%
doWork0%
__construct0%
execute0%
processWork0%
formatError0%
__construct0%
execute0%
processFile0%
getUpdateKey0%
doDBUpdates0%
__construct0%
execute0%
processFile0%
__construct0%
execute0%
processFile0%
__construct0%
execute0%
processFile0%
bucket0%
recordForHistogram0%
purgeDependingPages16%
getSizeFromMetadata37%
getPlayerWidth40%
allPresets40%
getID342%
handlePageMovedEvent50%
onSkinTemplateNavigation__Universal68%
createNode71%
getAV1CodecString73%
getAudioChannels75%
sortMediaByBandwidth76%
convertSubtitles77%
getContentType80%
seconds2npt83%
frameHeader85%
id3Header85%
getSourceFormatsByRows85%
hlsCodec87%
getID388%

Project Risks

Method CRAP
ffmpegEncode1406
run1122
processFile702
execute650
normaliseParams462
execute380
_splitStreams306
getMediaAttr306
_decodeIdentificationHeader272
getHtmlMediaTagOutput182
getTimedTextHTML182
isTranscodableFile182
execute156
doRedirectToPageForm156
removeTranscodes156
processFile156
onBeforePageDisplay132
doTransform132
getLocalSources132
execute110
_readBigEndian110
_readLittleEndian110
_decodePageHeader110
getTimedTextNamespace110
resizeThumb110
stateTagCloseMain110
listStreams90
tryFfmpegThumb90
getInfo72
makeParamString72
getUrl72
consumeEntity72
getRemoteSources72
isTranscodeEnabled72
getStreamTypes56
_decodeBareCommentsHeader56
_decodeIdentificationHeader56
renderState56
getTemporalUrlHash56
stateText56
stateTagSelfClose56
formatNode56
getTranscodesTable56
updateStreamingManifests56
updateJobQueue56
expandRate56
ffmpegAddWebmVideoOptions56
ffmpegAddAudioOptions56
getSizeFromMetadata54
findTimedText42
getLongDesc42
getTextTracksFromData42
getSteppedThumbWidth42
onMediaWikiPerformAction42
get42
consumeTimestamp42
stateStart42
stateTagMain42
stateTagEnd42
convertNodes42
renderOutput42
getCorrespondingFile42
getStatusMsg42
getTranscodeState42
isSmallestTranscodeForCodec42
ffmpegAddVideoSizeOptions42
execute42
doDBUpdates42
getAV1CodecString32
checkTimeSinceLastReset30
execute30
isFileMetadataValid30
getSizeFromMetadata30
_decodeCommonHeader30
isFileMetadataValid30
getBitRate30
getTracks30
existenceCheck30
initNamespace30
ffmpegExitCodeMessage30
getThumbTime30
getAPIData30
getMaxSizeTransform30
effectiveFrameRate30
shouldFrameDouble30
midiToAudioEncode30
getStateResetTime20
timestampTag20
getStreamTypes20
__construct20
__construct20
_decodeHeader20
getContentHeaders20
getShortDesc20
getRemoteTextSources20
getExistingSources20
verifyUpload20
isTimedMediaHandlerTitle20
preprocessResults20
execute20
getStateCounts20
toHtml20
consumeWhile20
consumePlaintext20
parse20
stateTimestamp20
tagFor20
view20
onSubmitEdit20
onSubmit20
getFileHTML20
codecFromTranscodeKey20
getMaxSizeWebStream20
getSources20
getDerivativeSourceAttributes20
cleanupTranscodes20
getMaxSize20
processWork20
sortMediaByBandwidth16
getAllowedParams12
rewrite12
expectBox12
seek12
read12
write12
getSizeAndMetadata12
getSizeFromMetadata12
getField12
__construct12
__construct12
__construct12
getBitrate12
getTextPagesFromDb12
onFileDeleteComplete12
onFileUndeleteComplete12
onArticlePurge12
register12
formatResult12
getTranscodes12
htmlTagSet12
getPoster12
getMediaSources12
consume12
consumeArrow12
stateTagSpace12
write12
getExistingSourceOptions12
getErrorsAndWarnings12
getProjectedFileSize12
getPrimarySourceAttributes12
isTranscodePrioritized12
cleanupOrphanedTranscodes12
__construct12
purgeTargetEncodeFile12
frameRate12
ffmpegAddDeinterlaceOptions12
execute12
processFile12
bucket12
recordForHistogram12
convertSubtitles11
purgeDependingPages8
frameHeader7
onSkinTemplateNavigation__Universal7
getID36
convertTimedText6
read6
findBox6
__construct6
getShortDesc6
getLongDesc6
verifyUpload6
getShortDesc6
getLongDesc6
getShortDesc6
getLongDesc6
getShortDesc6
getLongDesc6
getShortDesc6
getLongDesc6
_littleEndianBin2Hex6
getStream6
getStartOffset6
_decodeCommentsHeader6
_decodeHeader6
_decodeCommentsHeader6
__construct6
_decodeHeader6
formatMetadata6
getFramerate6
getRemoteTextPagesQuery6
getShortDesc6
getLongDesc6
getShortDesc6
getLongDesc6
formatMetadata6
onCanonicalNamespaces6
onImagePageHooks6
onArticleFromTitle6
onArticleContentOnDiff6
onImagePageAfterImageLinks6
onFileUpload6
onTitleMove6
execute6
getQueryInfo6
getTranscodesTable6
parserTransformHook6
isAudio6
getDimensionsString6
outputIframe6
getTextHandler6
getPlayerHeight6
getTagName6
restoreState6
discardState6
peek6
consumeLine6
consumeSpace6
recordError6
pushStack6
stateTextNewline6
stateTagStart6
stateTextEnd6
formatNodes6
toVtt6
__construct6
isTranscodableTitle6
transcodeRowsToTemplateParams6
getTranscodeDuration6
getTranscodeBitrate6
getTranscodeFileBaseName6
isTranscodeKeyPlayable6
isTranscodeReady6
clearTranscodeCache6
addSourceIfReady6
startJobQueue6
isTargetLargerThanFile6
getFile6
getTargetEncodePath6
getTargetPlaylistPath6
fileTarget6
setTranscodeError6
useScript6
fractionToFloat6
isInterlaced6
processFile6
createNode5
getSourceFormatsByRows5
getPlayerWidth4
allPresets4
seconds2npt4
getContentType3
id3Header3
hlsCodec3
getID33
handlePageMovedEvent2
getAudioChannels2