Skip to content

some fixes

4511c03
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Open

Microsoft Playready support for Amazon Prime RDK app #449

some fixes
4511c03
Select commit
Loading
Failed to load commit list.
GitHub Actions / Results servergstplayer succeeded Feb 19, 2026 in 1s

628 passed, 0 failed and 0 skipped

Tests passed successfully

✅ build/servergstplayer_gtest_result.xml

628 tests were completed in 2s with 628 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
AttachSamplesTest 4✅ 2ms
AttachSourceTest 21✅ 10ms
CheckAudioUnderflowTest 3✅ 1ms
DeepElementAddedTest 13✅ 5ms
EnoughDataTest 3✅ 0ms
EosTest 10✅ 3ms
FinishSetupSourceTest 9✅ 4ms
FlushOnPrerollControllerTest 7✅ 0ms
FlushTest 8✅ 3ms
FlushWatcherTests 1✅ 0ms
GenericPlayerTaskFactoryTest 39✅ 8ms
GstCapabilitiesTest 21✅ 17ms
GstDispatcherThreadClientTest 1✅ 1ms
GstDispatcherThreadTest 7✅ 3ms
GstGenericPlayerPrivateTest 124✅ 139ms
GstGenericPlayerTest 75✅ 80ms
GstInitialiserTests 1✅ 0ms
GstWebAudioPlayerPrivateTest 3✅ 2ms
GstWebAudioPlayerTest 10✅ 2s
HandleBusMessageTest 35✅ 14ms
NeedDataTest 10✅ 3ms
PauseTest 2✅ 0ms
PingTest 1✅ 0ms
PlayTest 2✅ 0ms
ProcessAudioGapTest 2✅ 0ms
ReadShmDataAndAttachSamplesTest 5✅ 1ms
RenderFrameTest 1✅ 0ms
ReportPositionTest 2✅ 0ms
RialtoProtectionMetadataTest 6✅ 1ms
RialtoServerAppSrcGstSrcTest 11✅ 9ms
RialtoServerCreateDecryptorPrivateTest 3✅ 0ms
RialtoServerCreateGstGenericPlayerTest 17✅ 15ms
RialtoServerCreateGstSrcTest 1✅ 0ms
RialtoServerCreateGstWebAudioPlayerTest 19✅ 14ms
RialtoServerDecryptorPrivateDecryptTest 7✅ 3ms
RialtoServerInitGstSrcTest 2✅ 0ms
SetBufferingLimitTest 1✅ 0ms
SetImmediateOutputTest 1✅ 0ms
SetLowLatencyTest 1✅ 0ms
SetMuteTest 6✅ 1ms
SetPlaybackRateTest 9✅ 3ms
SetPositionTest 5✅ 2ms
SetSourcePositionTest 5✅ 1ms
SetStreamSyncModeTest 1✅ 0ms
SetSubtitleOffsetTest 2✅ 0ms
SetSyncOffTest 1✅ 0ms
SetSyncTest 1✅ 0ms
SetTextTrackIdentifierTest 2✅ 0ms
SetupElementTest 32✅ 21ms
SetupSourceTest 2✅ 0ms
SetUseBufferingTest 1✅ 0ms
SetVideoGeometryTest 2✅ 0ms
SetVolumeTest 8✅ 2ms
ShutdownTest 1✅ 0ms
StopTest 1✅ 0ms
SwitchSourceTest 2✅ 0ms
UnderflowTest 4✅ 1ms
UpdatePlaybackGroupTest 7✅ 2ms
WebAudioEosTest 2✅ 0ms
WebAudioGstDispatcherThreadClientTest 1✅ 1ms
WebAudioHandleBusMessageTest 12✅ 3ms
WebAudioPauseTest 2✅ 0ms
WebAudioPlayerTaskFactoryTest 10✅ 1ms
WebAudioPlayTest 2✅ 0ms
WebAudioSetCapsTest 6✅ 2ms
WebAudioSetVolumeTest 1✅ 0ms
WebAudioShutdownTest 1✅ 0ms
WebAudioStopTest 1✅ 0ms
WebAudioWriteBufferTest 8✅ 2ms
WorkerThreadTest 1✅ 0ms

✅ AttachSamplesTest

✅ shouldAttachAllAudioSamples
✅ shouldAttachAllVideoSamples
✅ shouldAttachAllSubtitleSamples
✅ shouldSkipAttachingSubtitleSamples

✅ AttachSourceTest

✅ shouldAttachAudioSource
✅ shouldAttachAudioSourceWithChannelsAndRateAndDrm
✅ shouldAttachOpusWithAudioSpecificConf
✅ shouldAttachBwavAudioSource
✅ shouldAttachXrawAudioSource
✅ shouldAttachFlacAudioSource
✅ shouldAttachMp3AudioSource
✅ shouldAttachVideoSourceAuAvc
✅ shouldAttachVideoSourceNalAvc
✅ shouldAttachVideoSourceAuHvc
✅ shouldAttachVideoSourceAuHev
✅ shouldAttachSubtitleSource
✅ shouldAttachVideoSourceWithStringCodecData
✅ shouldAttachVideoSourceEmptyCodecData
✅ shouldAttachVideoDolbyVisionSource
✅ shouldFailToAttachUnknownSource
✅ shouldSwitchAudioSourceWhenSourceIsReattached
✅ shouldFailToSwitchAudioSourceWhenSourceIsReattached
✅ shouldFailToCastAudioSource
✅ shouldFailToCastVideoSource
✅ shouldFailToCastDolbyVisionSource

✅ CheckAudioUnderflowTest

✅ shouldNotTriggerAudioUnderflow
✅ shouldNotTriggerAudioUnderflowWhenPositionFailed
✅ shouldTriggerAudioUnderflow

✅ DeepElementAddedTest

✅ shouldNotRegisterCallbackWhenPtrsAreNotEqual
✅ shouldNotRegisterCallbackWhenElementIsNull
✅ shouldNotRegisterCallbackWhenElementNameIsNotTypefind
✅ shouldRegisterCallbackForTypefindElement
✅ shouldUpdatePlaybackGroupWhenCallbackIsCalled
✅ shouldAddSignalIdOfRegisteredCallbackToPlayerContext
✅ shouldAssignPipelineOnlyWhenElementNameIsNull
✅ shouldDetectParseElement
✅ shouldDetectDecElement
✅ shouldDoNothingForNotHandledElementName
✅ shouldDoNothingWhenAudiosinkParentNameIsNull
✅ shouldDoNothingWhenAudiosinkParentIsNotBin
✅ shouldFindAudioSinkBin

✅ EnoughDataTest

✅ shouldMarkEnoughAudioData
✅ shouldMarkEnoughVideoData
✅ shouldNotMarkEnoughAudioDataWhenDataIsNotPushed

✅ EosTest

✅ shouldFailWhenStreamIsNotFound
✅ shouldSetEos
✅ shouldFailToSetEos
✅ shouldSetEosForAudioAndCancelAudioUnderflow
✅ shouldSetEosForAudioAndSkipCancellingVideoUnderflow
✅ shouldSetEosForVideoAndCancelVideoUnderflow
✅ shouldSetEosForVideoAndSkipCancellingAudioUnderflow
✅ shouldNotEosWhenDataIsBuffered
✅ shouldSendEosWhenEosPending
✅ shouldNotSendEosWhenAlreadySetEos

✅ FinishSetupSourceTest

✅ shouldFinishSetupSource
✅ shouldFinishSetupSourceWithUnknownSource
✅ shouldScheduleAudioNeedData
✅ shouldScheduleVideoNeedData
✅ shouldScheduleAudioEnoughData
✅ shouldScheduleVideoEnoughData
✅ shouldScheduleAudioSeekData
✅ shouldScheduleVideoSeekData
✅ shouldntFinishSetupSourceWhenSourceNotSet

✅ FlushOnPrerollControllerTest

✅ shouldNotWaithWhenNoFlushSet
✅ shouldNotWaitWhenNotPrerolled
✅ shouldNotWaitWhenReset
✅ shouldNotWaitWhenPrerolling
✅ shouldNotWaitWhenPreviousProcedureIsFinished
✅ shouldNotWaitWithVideoFlushWhenOnlyAudioIsOngoing
✅ shouldWaitForAudioFlushFinish

✅ FlushTest

✅ ShouldNotFlushUnknownSource
✅ ShouldNotFlushWhenSourceIsNotAccessible
✅ ShouldFlushAudio
✅ ShouldFlushAudioWithoutSendingEventBelowPaused
✅ ShouldFlushAudioEvenIfEventSendingFails
✅ ShouldFlushAudioWithNeedData
✅ ShouldFlushVideo
✅ ShouldFlushVideoWithNeedData

✅ FlushWatcherTests

✅ ShouldReturnCorrectValue

✅ GenericPlayerTaskFactoryTest

✅ ShouldCreateAttachSamples
✅ ShouldCreateAttachSource
✅ ShouldCreateDeepElementAdded
✅ ShouldCreateEnoughData
✅ ShouldCreateEos
✅ ShouldCreateFinishSetupSource
✅ ShouldCreateHandleBusMessage
✅ ShouldCreateNeedData
✅ ShouldCreatePause
✅ ShouldCreatePlay
✅ ShouldCreateReadShmDataAndAttachSamples
✅ ShouldCreateReportPosition
✅ ShouldCreateCheckAudioUnderflow
✅ ShouldCreateSetPosition
✅ ShouldCreateSetupElement
✅ ShouldCreateSetupSource
✅ ShouldCreateSetVideoGeometry
✅ ShouldCreateSetVolume
✅ ShouldCreateSetMute
✅ ShouldCreateSetLowLatency
✅ ShouldCreateSetSync
✅ ShouldCreateSetSyncOff
✅ ShouldCreateSetStreamSyncMode
✅ ShouldCreateShutdown
✅ ShouldCreateStop
✅ ShouldCreateUnderflow
✅ ShouldCreateSetPlaybackRate
✅ ShouldCreateUpdatePlaybackGroup
✅ ShouldCreatePing
✅ ShouldCreateFlush
✅ ShouldCreateSetSourcePosition
✅ ShouldCreateProcessAudioGap
✅ ShouldCreateSetImmediateOutput
✅ ShouldCreateSetTextTrackIdentifier
✅ ShouldCreateRenderFrame
✅ ShouldCreateSetBufferingLimit
✅ ShouldCreateSetUseBuffering
✅ ShouldCreateSwitchSource
✅ ShouldCreateSynchroniseSubtitleClock

✅ GstCapabilitiesTest

✅ FactoryCreatesObject
✅ CreateGstCapabilities_NoDecoderAndNoSink
✅ CreateGstCapabilities_OnlyOneSinkElement
✅ CreateGstCapabilities_OnlyOneDecoderWithNoPads
✅ CreateGstCapabilities_OnlyOneDecoderWithTwoSinkPadsAndOneSrcPad
✅ getSupportedPropertiesWithPropertiesSupported
✅ getSupportedPropertiesForBlacklistedFactories
✅ getSupportedPropertiesWithAudioFadeProperty
✅ getSupportedPropertiesWithNoPropertiesSupported
✅ CreateGstCapabilities_OnlyOneDecoderWithTwoPadsWithTheSameCaps
✅ CreateGstCapabilities_OneDecoderWithOneSinkPad_ParserWithConnectableSrcPad
✅ CreateGstCapabilities_OneDecoderWithOneSinkPad_ParserWithConnectableSrcPad_OneSinkElement
✅ CreateGstCapabilities_OneDecoderWithOneSinkPad_ParserWithNoConnectableSrcPad
✅ CreateGstCapabilities_OneDecoderWithOneSinkPad_ParserWithConnectableSrcPadButNotRialtoMimeTypes
✅ CreateGstCapabilities_TwoDecodersWithOneSinkPad_ParserWithMatchingSrcPad
✅ CreateGstCapabilities_OneDecodersWithOneSinkPad_ParserWithTwoSrcPadsAndSecondConnectable
✅ CreateGstCapabilities_OneDecodersWithOneSinkPads_TwoParsersWithConnectableSrcPads
✅ CreateGstCapabilities_GetSubtitlesMimeTypes
✅ shouldFailToCheckIfVideoIsMasterWhenRegistryIsNull
✅ shouldCheckIfVideoIsMasterAndReturnTrue
✅ shouldCheckIfVideoIsMasterAndReturnFalse

✅ GstDispatcherThreadClientTest

✅ shouldHandleBusMessage

✅ GstDispatcherThreadTest

✅ PollTimeout
✅ StateChangedToPaused
✅ StateChangedToPlaying
✅ StateChangedToStop
✅ StateChangedToPrerolling
✅ Error
✅ StateChangedToPausedNonPipeline

✅ GstGenericPlayerPrivateTest

✅ shouldScheduleNeedData
✅ shouldScheduleEnoughDataData
✅ shouldScheduleAudioUnderflowWithUnderflowEnabled
✅ shouldScheduleAudioUnderflowWithUnderflowDisabledNotPlaying
✅ shouldScheduleVideoUnderflowWithUnderflowEnabled
✅ shouldScheduleVideoUnderflowWithUnderflowDisabled
✅ shouldNotSetVideoRectangleWhenVideoSinkIsNull
✅ shouldNotSetVideoRectangleWhenVideoSinkDoesNotHaveRectangleProperty
✅ shouldSetVideoRectangle
✅ shouldSetVideoRectangleAutoVideoSink
✅ shouldFailToSetImmediateOutputIfSinkIsNull
✅ shouldFailToSetImmediateOutputIfPropertyDoesntExist
✅ shouldSetImmediateOutput
✅ shouldFailToSetLowLatencyIfSinkIsNull
✅ shouldFailToSetLowLatencyIfPropertyDoesntExist
✅ shouldSetLowLatency
✅ shouldSetLowLatencyAutoAudioSink
✅ shouldFailToSetSyncIfSinkIsNull
✅ shouldFailToSetSyncIfPropertyDoesntExist
✅ shouldSetSync
✅ shouldFailToSetSyncOffIfDecoderIsNull
✅ shouldFailToSetSyncOffIfPropertyDoesntExist
✅ shouldSetSyncOff
✅ shouldFailToSetAudioStreamSyncModeIfDecoderIsNull
✅ shouldFailToSetAudioStreamSyncModeIfPropertyDoesntExist
✅ shouldSetAudioStreamSyncMode
✅ shouldFailToSetVideoStreamSyncModeIfParserIsNull
✅ shouldFailToSetVideoStreamSyncModeIfPropertyDoesntExist
✅ shouldSetVideoStreamSyncMode
✅ shouldFailToSetBufferingLimitIfDecoderIsNull
✅ shouldFailToSetBufferingLimitIfPropertyDoesntExist
✅ shouldSetBufferingLimit
✅ shouldFailToSetUseBufferingIfDecodebinIsNull
✅ shouldSetUseBuffering
✅ shouldFailToSetRenderFrameIfSinkIsNull
✅ shouldFailToSetRenderFrameIfPropertyDoesntExist
✅ shouldSetRenderFrame
✅ shouldNotifyNeedAudioData
✅ shouldNotifyNeedVideoData
✅ shouldNotNotifyNeedAudioDataWhenNotNeeded
✅ shouldNotNotifyNeedVideoDataWhenNotNeeded
✅ shouldCreateClearGstBuffer
✅ shouldCreateCENSEncryptedGstBuffer
✅ shouldCreateCENCEncryptedGstBuffer
✅ shouldFailToAddProtectionMetadata
✅ shouldNotAttachAudioDataWhenItIsNotNeeded
✅ shouldNotAttachAudioWhenSourceIsNotPresent
✅ shouldAttachAudioData
✅ shouldAttachAudioDataWhenAttachingSampleFails
✅ shouldAttachAudioSample
✅ shouldAttachAdditionalAudioSample
✅ undefinedStopPositionInSetSourcePosition
✅ shouldPushSubtitleBuffer
✅ shouldPushSubtitleBufferAndSetPosition
✅ shouldCancelAudioUnderflowAndResume
✅ shouldNotAttachVideoDataWhenBuffersAreEmpty
✅ shouldNotAttachVideoDataWhenItIsNotNeeded
✅ shouldNotAttachVideoWhenSourceIsNotPresent
✅ shouldAttachVideoData
✅ shouldAttachVideoSample
✅ shouldCancelVideoUnderflowAndResume
✅ shouldNotCancelVideoUnderflowWhenAudioUnderflowIsActive
✅ shouldAttachAudioAndVideoData
✅ shouldUpdateAudioCaps
✅ shouldUpdateAudioCapsWithStringCodecData
✅ shouldUpdateAudioCapsSampleRateOnly
✅ shouldUpdateAudioCapsNumOfChannelsOnly
✅ shouldUpdateAudioCapsCodecDataOnly
✅ shouldNotUpdateAudioCapsWhenValuesAreInvalid
✅ shouldNotUpdateAudioCapsWhenNoSrc
✅ shouldUpdateVideoCaps
✅ shouldUpdateVideoCapsWithStringCodecData
✅ shouldUpdateVideoCapsWithoutCodecData
✅ shouldUpdateVideoCapsWithoutFrameRate
✅ shouldUpdateVideoCapsWithoutWidth
✅ shouldUpdateVideoCapsWithoutHeight
✅ shouldNotUpdateVideoCapsNoChange
✅ shouldNotUpdateAudioVideoCapsWhenNoSrc
✅ shouldAddClippingMetaWhenStartAndEndNotZero
✅ shouldFailToAddClipping
✅ shouldAddClippingMetaWhenStartNotZero
✅ shouldAddClippingMetaWhenEndNotZero
✅ shouldAddClippingMetaWhenStartAndEndZero
✅ shouldFailToChangePlaybackStateWhenPipelineIsNull
✅ shouldFailToChangePlaybackStateWhenSetStateFails
✅ shouldChangePlaybackState
✅ shouldStartPositionReportingTimer
✅ shouldStartPlaybackInfoTimer
✅ shouldNotStartPositionReportingTimerWhenItIsActive
✅ shouldNotStartPlaybackInfoTimerWhenItIsActive
✅ shouldScheduleReportPositionWhenPositionReportingTimerIsFired
✅ shouldSchedulePlaybackInfoWhenPlaybackInfoTimerIsFired
✅ shouldStopActivePositionReportingTimer
✅ shouldStopActivePlaybackInfoTimerTimer
✅ shouldNotStopInactivePositionReportingTimer
✅ shouldNotStopInactivePlaybackInfoTimer
✅ shouldNotStopInactivePositionReportingTimerWhenThereIsNoTimer
✅ shouldStopWorkerThread
✅ shouldUpdatePlaybackGroup
✅ shouldAddAutoVideoSinkChildSink
✅ shouldAddAutoAudioSinkChildSink
✅ shouldNotAddAutoVideoSinkChildIfNotASink
✅ shouldNotAddAutoAudioSinkChildIfNotASink
✅ shouldAddAutoVideoSinkChildAndOverwrite
✅ shouldAddAutoAudioSinkChildAndOverwrite
✅ shouldRemoveAutoVideoSinkChildSink
✅ shouldRemoveAutoAudioSinkChildSink
✅ shouldNotRemoveAutoVideoSinkChildIfDifferentSink
✅ shouldNotRemoveAutoAudioSinkChildIfDifferentSink
✅ shouldNotRemoveAutoVideoSinkChildIfNotAdded
✅ shouldNotRemoveAutoAudioSinkChildIfNotAdded
✅ shouldScheduleAllSourcesAttached
✅ shouldFailToReattachSourceWhenSourceIsNotPresent
✅ shouldFailToReattachAudioSourceWithEmptyMimeType
✅ shouldFailToReattachVideoSource
✅ shouldSkipReattachingAudioSource
✅ shouldReattachMpegAudioSource
✅ shouldReattachEac3AudioSource
✅ shouldReattachRawAudioSource
✅ shouldSetSourceFlushed
✅ failToSetShowVideoWindowNoValue
✅ failToSetShowVideoWindowNoSink
✅ failToSetShowVideoWindowNoProperty
✅ shouldSetShowVideoWindow

✅ GstGenericPlayerTest

✅ shouldAttachSource
✅ shouldAllSourcesAttached
✅ shouldPlayOnWorkerThread
✅ shouldPlayImmediatelySynchronously
✅ shouldPlayImmediatelyAsynchronously
✅ shouldPause
✅ shouldStop
✅ shouldAttachSamplesFromVector
✅ shouldAttachSamplesFromShm
✅ shouldSetPlaybackRate
✅ shouldSetPosition
✅ shouldSetVideoGeometry
✅ shouldSetEos
✅ shouldSetupSource
✅ shouldSetupElement
✅ shouldAddDeepElement
✅ shouldReturnInvalidPositionWhenPipelineIsNull
✅ shouldReturnInvalidPositionWhenPipelineIsPrerolling
✅ shouldReturnInvalidPositionWhenQueryFails
✅ shouldReturnPositionInPlayingState
✅ shouldReturnPositionInPausedState
✅ shouldSetImmediateOutput
✅ shouldGetImmediateOutputInPlayingState
✅ shouldGetImmediateOutputInPlayingStateForAudio
✅ shouldFailToGetImmediateOutputInPlayingStateIfMediaTypeWrong
✅ shouldFailToGetImmediateOutputInPlayingStateIfStubNull
✅ shouldFailToGetImmediateOutputInPlayingStateIfPropertyDoesntExist
✅ shouldGetStatsInPlayingState
✅ shouldFailToGetStatsInPlayingStateIfMediaTypeWrong
✅ shouldFailToGetStatsInPlayingStateIfStubNull
✅ shouldFailToGetStatsInPlayingStateIfStructureNull
✅ shouldFailToGetStatsInPlayingStateIfStructIncomplete
✅ ShouldGetVolumeWhenAudioSinkIsNull
✅ shouldGetVolumeWithNegativeFadeVolume
✅ shouldGetVolumeWithPositiveFadeVolume
✅ shouldRenderFrame
✅ shouldFailToReturnVideoMute
✅ shouldFailToReturnAudioMuteWhenPipelineIsNull
✅ shouldReturnAudioMute
✅ shouldFailToReturnSubtitleMuteWhenSinkIsNull
✅ shouldReturnSubtitleMute
✅ shouldMute
✅ shouldSetTextTrackIdentifier
✅ shouldFailToGetTextTrackIdentifierWhenSinkIsNull
✅ shouldFailToGetTextTrackIdentifierWhenSinkReturnsNull
✅ shouldGetTextTrackIdentifier
✅ shouldSetLowLatency
✅ shouldSetSync
✅ shouldGetSync
✅ shouldGetPendingSyncIfNoSinkAvailable
✅ shouldFailToGetSyncIfStubNull
✅ shouldFailToGetSyncIfPropertyDoesntExist
✅ shouldSetSyncOff
✅ shouldSetStreamSyncMode
✅ shouldGetStreamSyncMode
✅ shouldGetPendingStreamSyncModeIfNoSinkAvailable
✅ shouldGetStreamSyncModeWithIteratorResync
✅ shouldFailToGetStreamSyncModeIfNoDecoder
✅ shouldFailToGetStreamSyncModeIfPropertyDoesntExist
✅ shouldPing
✅ shouldFlush
✅ shouldSetSourcePosition
✅ shouldProcessAudioGap
✅ shouldResetSourceAndSubtitleSinkOnTeardownWhenSet
✅ shouldSetBufferingLimit
✅ shouldGetBufferingLimit
✅ shouldGetPendingBufferingLimitIfNoSinkAvailable
✅ shouldGetBufferingLimitWithIteratorResync
✅ shouldFailToGetBufferingLimitIfNoDecoder
✅ shouldFailToGetBufferingLimitIfPropertyDoesntExist
✅ shouldSetUseBuffering
✅ shouldGetUseBuffering
✅ shouldGetPendingUseBufferingIfNoDecodebinAvailable
✅ shouldFailToGetUseBufferingIfNoDecodebin
✅ shouldSwitchSource

✅ GstInitialiserTests

✅ ShouldNotInitialiseTwice

✅ GstWebAudioPlayerPrivateTest

✅ shouldFailToChangePlaybackStateWhenSetStateFails
✅ shouldChangePlaybackState
✅ shouldStopWorkerThread

✅ GstWebAudioPlayerTest

✅ shouldSetCaps
✅ shouldPlay
✅ shouldPause
✅ shouldSetEos
✅ shouldSetVolume
✅ shouldReturnVolume
✅ writeBufferShouldReturn0OnTimeout
✅ shouldWriteBuffer
✅ shouldGetQueuedBytes
✅ shouldPing

✅ HandleBusMessageTest

✅ shouldNotHandleMessageWithUnknownType
✅ shouldNotHandleEosMessageForAnotherPipeline
✅ shouldNotHandleMessageEosWhenPipelineIsNull
✅ shouldNotHandleMessageEosWhenEosAlreadyNotified
✅ shouldNotHandleEosMessageWhenFlushRequestedBeforeTaskCreation
✅ shouldNotHandleEosMessageWhenFlushRequestedAfterTaskCreation
✅ shouldHandleEosMessage
✅ shouldNotHandleStateChangedMessageForAnotherPipeline
✅ shouldNotHandleMessageStateChangedWhenPipelineIsNull
✅ shouldNotHandleStateChangedMessageWhenGstPlayerClientIsNull
✅ shouldHandleStateChangedToNullMessage
✅ shouldHandleStateChangedToPausedMessage
✅ shouldHandleStateChangedToPausedMessageWhenSyncFlushIsOngoing
✅ shouldSkipHandlingStateChangedToPausedMessageWhenAsyncFlushWasQueuedBeforeHandleBusMessage
✅ shouldSkipHandlingStateChangedToPausedMessageWhenAsyncFlushWasQueuedAfterHandleBusMessage
✅ shouldHandleStateChangedToPausedAndPendingPausedMessage
✅ shouldHandleStateChangedToPlayingMessage
✅ shouldHandleStateChangedToPlayingMessageWhenSyncFlushIsOngoing
✅ shouldSkipHandlingStateChangedToPlayingMessageWhenAsyncFlushIsQueuedBeforeHandleBusMessage
✅ shouldSkipHandlingStateChangedToPlayingMessageWhenAsyncFlushIsQueuedAfterHandleBusMessage
✅ shouldHandleStateChangedToPlayingMessageAndSetPendingPlaybackRate
✅ shouldNotHandleQosMessageForUnsupportedFormat
✅ shouldNotHandleQosMessageForUnknownSourceType
✅ shouldHandleQosMessageForVideo
✅ shouldHandleQosMessageForAudio
✅ shouldHandleErrorMessageNoEos
✅ shouldHandleErrorMessageWhenEosAllSources
✅ shouldHandleStreamErrorMessageNoEos
✅ shouldHandleStreamErrorMessageWhenEosSingleSource
✅ shouldHandleStreamErrorMessageWhenEosAllSources
✅ shouldHandleStreamErrorMessageWhenEosAllSourcesAndEosAlreadyNotfied
✅ shouldHandleWarningMessageForAudioDecryption
✅ shouldHandleWarningMessageForVideoDecryption
✅ shouldHandleWarningMessageGeneric
✅ shouldHandleWarningMessageForUnknownSrcTypeDecryption

✅ NeedDataTest

✅ shouldDoNothingWhenAudioAppSourceIsNotPresent
✅ shouldDoNothingWhenVideoAppSourceIsNotPresent
✅ shouldDoNothingForUnknownAppSource
✅ shouldNotifyNeedAudioData
✅ shouldFailToNotifyNeedAudioData
✅ shouldSkipToNotifyNeedAudioDataWhenAnotherOneIsPending
✅ shouldNotifyNeedVideoData
✅ shouldFailToNotifyNeedVideoData
✅ shouldSkipToNotifyNeedVideoData
✅ shouldAttachDataWhenBuffersBuffered

✅ PauseTest

✅ shouldPause
✅ shouldPauseDuringUnderflow

✅ PingTest

✅ shouldPing

✅ PlayTest

✅ shouldPlay
✅ shouldFailToPlay

✅ ProcessAudioGapTest

✅ shouldFailToProcessAudioGapNoPipeline
✅ shouldProcessAudioGap

✅ ReadShmDataAndAttachSamplesTest

✅ shouldAttachAllAudioSamples
✅ shouldAttachAllVideoSamples
✅ shouldAttachAllSubtitleSamples
✅ shouldSkipAttachingSubtitleSamples
✅ shouldSkipAttachingUnknownSamples

✅ RenderFrameTest

✅ shouldRenderFrame

✅ ReportPositionTest

✅ shouldReportPosition
✅ shouldFailToReportPosition

✅ RialtoProtectionMetadataTest

✅ addProtectionMetadata
✅ getProtectionMetadataDataSuccess
✅ getProtectionMetadataDataNoMeta
✅ removeProtectionMetadataSuccess
✅ removeProtectionMetadataFail
✅ removeProtectionMetadataNoMeta

✅ RialtoServerAppSrcGstSrcTest

✅ SetupVideo
✅ SetupVideoH264WithoutStreamFormat
✅ SetupVideoWithStreamFormat
✅ SetupVideoWithCodecData
✅ FactoryCreatesObject
✅ SetupAudio
✅ DecryptorFailure
✅ PayloaderFailure
✅ QueueFailure
✅ NotDrm
✅ AllSrcsAdded

✅ RialtoServerCreateDecryptorPrivateTest

✅ Create
✅ getGstWrapperFails
✅ getGlibWrapperFails

✅ RialtoServerCreateGstGenericPlayerTest

✅ FactoryCreatesObject
✅ CreateDestroyPrimaryVideoSuccess
✅ GetFactorySucceeds
✅ CreateDestroySecondaryVideoMinWidthSuccess
✅ CreateDestroySecondaryVideoMinHeightSuccess
✅ CreateDestroySecondaryVideoNoWesterosSuccess
✅ CreateWesterossinkFailureSetContextSuccessForSecondaryVideoSuccess
✅ SetResUsageFailureSetContextSuccessForSecondaryVideoSuccess
✅ CreateWesterossinkSuccessCreateContextFailureForSecondaryVideoSuccess
✅ CreateWesterossinkSuccessCreateStructureFailureForSecondaryVideoSuccess
✅ CreateWesterossinkFailsCreateContextFailureForSecondaryVideoFailure
✅ GstSrcFactoryNull
✅ TimerFactoryFails
✅ GstSrcFactoryFails
✅ UnknownMediaType
✅ PlaysinkNotFound
✅ SetNativeAudioForBrcmAudioSink

✅ RialtoServerCreateGstSrcTest

✅ Create

✅ RialtoServerCreateGstWebAudioPlayerTest

✅ CreateDestroyLlamaSuccess
✅ FactoryCreatesObject
✅ CreateDestroyXiOneSuccess
✅ CreateDestroyGenericPlatformsSuccess
✅ getGstSrcFailure
✅ createWorkerThreadFailure
✅ createPipelineFailure
✅ createAppSrcFailure
✅ getRegistryFailure
✅ createAmlhalaSinkFailure
✅ createRtkAudioSinkFailure
✅ createAudioConvertFailure
✅ createAudioResampleFailure
✅ createAudioQueueFailure
✅ linkAudioSinkBinFailure
✅ linkElementFailure
✅ createAutoAudioSinkFailure
✅ createGstDispatcherThreadFailure
✅ createGstDispatcherAfterFailureToCreateVolume

✅ RialtoServerDecryptorPrivateDecryptTest

✅ SuccessEncrypted
✅ SuccessEncryptedNoEncryptionPattern
✅ DecryptionServiceDecryptFailure
✅ PlayreadySuccessEncrypted
✅ PlayreadySuccessEncryptedMappingFail
✅ SuccessClear
✅ NoDecryptionService

✅ RialtoServerInitGstSrcTest

✅ NoRialtoSrc
✅ RialtoSrcExists

✅ SetBufferingLimitTest

✅ shouldSetBufferingLimit

✅ SetImmediateOutputTest

✅ shouldSetImmediateOutput

✅ SetLowLatencyTest

✅ shouldSetLowLatency

✅ SetMuteTest

✅ shouldFailToSetMuteForUnknownSource
✅ shouldSetVideoMute
✅ shouldFailToSetAudioMuteWhenPipelineIsNull
✅ shouldSetAudioMute
✅ shouldFailToSetSubtitleMuteWhenSinkIsNull
✅ shouldSetSubtitleMute

✅ SetPlaybackRateTest

✅ shouldNotChangePlaybackRateIfItsAlreadySet
✅ shouldNotChangePlaybackRateIfPipelineIsNull
✅ shouldNotChangePlaybackRateIfPipelineStateIsBelowPlaying
✅ shouldSetPlaybackRateAudioSinkNull
✅ shouldFailToSetPlaybackRateAudioSinkNull
✅ shouldSetPlaybackRateAudioSinkOtherThanAmlhala
✅ shouldFailToSetPlaybackRateAudioSinkOtherThanAmlhala
✅ shouldSetPlaybackRateAmlhalaAudioSink
✅ shouldFailToSetPlaybackRateAmlhalaAudioSink

✅ SetPositionTest

✅ shouldFailToSetPositionWhenClientIsNull
✅ shouldFailToSetPositionWhenPipelineIsNull
✅ shouldFailToSetPositionWhenSeekFailed
✅ shouldSetPosition
✅ shouldSetPositionWithChangedPlaybackRate

✅ SetSourcePositionTest

✅ ShouldNotSetSourcePositionForUnknownSource
✅ ShouldNotSetSourcePositionWhenSourceIsNotAccessible
✅ ShouldSetAudioSourcePosition
✅ ShouldSetVideoSourcePosition
✅ ShouldSetSubtitleSourcePosition

✅ SetStreamSyncModeTest

✅ shouldSetStreamSyncMode

✅ SetSubtitleOffsetTest

✅ ShouldNotSetSubtitleOffsetWhenSubtitleSinkIsNull
✅ ShouldSetSubtitleOffsetWithSubtitleSink

✅ SetSyncOffTest

✅ shouldSetSyncOff

✅ SetSyncTest

✅ shouldSetSync

✅ SetTextTrackIdentifierTest

✅ shouldFailToSetTextTrackIdentifierWhenSinkIsNull
✅ shouldSetTextTrackIdentifier

✅ SetupElementTest

✅ shouldSetupVideoElement
✅ shouldSetupVideoElementWithPendingGeometry
✅ shouldSetupVideoElementWithPendingImmediateOutput
✅ shouldSetupAudioElementWithPendingLowLatency
✅ shouldSetupAudioElementWithPendingSync
✅ shouldSetupAudioElementWithPendingSyncOff
✅ shouldSetupAudioElementWithPendingStreamSyncMode
✅ shouldSetupVideoElementWithPendingStreamSyncMode
✅ shouldSetupAudioElementWithPendingBufferingLimit
✅ shouldSetupVideoElementWithPendingRenderFrame
✅ shouldSetupVideoElementWithPendingShowVideoWindow
✅ shouldSetupAudioElementAmlhalasinkWhenNoVideo
✅ shouldSetupAudioElementAmlhalasinkWhenVideoExists
✅ shouldSetupAudioElementForBrcmAudioSink
✅ shouldSetupVideoElementWithChildSinkForAutoVideoSink
✅ shouldSetupAudioElementWithChildSinkForAutoAudioSink
✅ shouldSetupVideoElementWithoutChildSinkForAutoVideoSink
✅ shouldSetupAudioElementWithoutChildSinkForAutoAudioSink
✅ shouldSetupVideoElementWithMultpileChildSinkForAutoVideoSink
✅ shouldSetupAudioElementWithMultpileChildSinkForAutoAudioSink
✅ shouldSetupAudioElement
✅ shouldReportVideoUnderflow
✅ shouldReportAudioUnderflow
✅ shouldReportAutoVideoSinkChildAdded
✅ shouldReportAutoAudioSinkChildAdded
✅ shouldReportAutoVideoSinkChildRemoved
✅ shouldReportAutoAudioSinkChildRemoved
✅ shouldSetupTextTrackSink
✅ shouldSetupBaseParse
✅ shouldSetupVideoDecodersForSubtitleSink
✅ shouldSetupVideoDecodersForSubtitleSinkWesterosSinkWithDecoder
✅ shouldSetupVideoDecodersForSubtitleSinkWesterosSinkWithoutDecoder

✅ SetupSourceTest

✅ shouldSetupSource
✅ shouldScheduleAllSourcesAttachedWhenItWasReceivedBefore

✅ SetUseBufferingTest

✅ shouldSetUseBuffering

✅ SetVideoGeometryTest

✅ shouldNotSetVideoGeometryWhenPipelineIsNull
✅ shouldSetVideoGeometry

✅ SetVolumeTest

✅ shouldFailToSetVolumeWhenPipelineIsNull
✅ shouldSetVolume
✅ shouldSetVolumeWithAudioFadeWithEaseTypeLinear
✅ shouldSetVolumeWithAudioFadeWithEaseTypeCubicIn
✅ shouldSetVolumeWithAudioFadeWithEaseTypeCubicOut
✅ shouldSetVolumeWithAudioFadeInSocWithLinearEaseType
✅ shouldSetVolumeWithAudioFadeInSocWithCubicInType
✅ shouldSetVolumeWithAudioFadeInSocWithCubicOutType

✅ ShutdownTest

✅ shouldShutdown

✅ StopTest

✅ shouldStop

✅ SwitchSourceTest

✅ shouldSwitchSource
✅ shouldFailToSwitchSource

✅ UnderflowTest

✅ shouldNotReportUnderflowWhenItIsDisabled
✅ shouldNotReportUnderflowForNotAttachedSource
✅ shouldNotReportUnderflowWhenItIsAlreadyActive
✅ shouldReportUnderflow

✅ UpdatePlaybackGroupTest

✅ shouldDoNothingWhenCapsAreNull
✅ shouldDoNothingWhenCapsStrIsNull
✅ shouldDoNothingForVideoCaps
✅ shouldDoNothingWhenTypefindParentIsNull
✅ shouldDoNothingWhenElementOtherThanDecodebin
✅ shouldSuccessfullyFindTypefindAndParent
✅ shouldTriggerUseBuffering

✅ WebAudioEosTest

✅ shouldSetEos
✅ shouldFailToSetEos

✅ WebAudioGstDispatcherThreadClientTest

✅ shouldHandleBusMessage

✅ WebAudioHandleBusMessageTest

✅ shouldNotHandleMessageWithUnknownType
✅ shouldNotHandleEosMessageForAnotherPipeline
✅ shouldNotHandleMessageEosWhenPipelineIsNull
✅ shouldHandleEosMessageWhenFlushFails
✅ shouldHandleEosMessage
✅ shouldNotHandleStateChangedMessageForAnotherPipeline
✅ shouldNotHandleMessageStateChangedWhenPipelineIsNull
✅ shouldNotHandleStateChangedMessageWhenGstPlayerClientIsNull
✅ shouldHandleStateChangedToPausedMessage
✅ shouldHandleStateChangedToPausedAndPendingPausedMessage
✅ shouldHandleStateChangedToPlayingMessage
✅ shouldHandleErrorMessage

✅ WebAudioPauseTest

✅ shouldPause
✅ shouldFailToPause

✅ WebAudioPlayerTaskFactoryTest

✅ ShouldCreateSetCaps
✅ ShouldCreatePlay
✅ ShouldCreatePause
✅ ShouldCreateEos
✅ ShouldStop
✅ ShouldShutdown
✅ ShouldSetVolume
✅ ShouldWriteBuffer
✅ ShouldHandleBusMessage
✅ ShouldCreatePing

✅ WebAudioPlayTest

✅ shouldPlay
✅ shouldFailToPlay

✅ WebAudioSetCapsTest

✅ shouldSetCapsWithFormatF64LE
✅ shouldSetCapsWithWithFormatS16BE
✅ shouldSetCapsWithFormatU32LE
✅ shouldSetCapsWhenAppSrcCapsNull
✅ shouldNotSetCapsWhenInvalidMimeType
✅ shouldNotSetCapsWhenCapsEqual

✅ WebAudioSetVolumeTest

✅ shouldSetVolume

✅ WebAudioShutdownTest

✅ shouldShutdown

✅ WebAudioStopTest

✅ shouldStop

✅ WebAudioWriteBufferTest

✅ shouldWriteBufferForAllData
✅ shouldWriteBufferForAllMainDataAndPartialWrapData
✅ shouldWriteBufferForPartialMainDataAndNoWrapData
✅ shouldNotWriteBufferIfNewAllocateFails
✅ shouldWriteBufferIfBytesWrittenLessThanExpected
✅ shouldNotWriteBufferIfPushBufferFails
✅ shouldNotWriteBufferIfBytesToWriteLessThanBytesPerSample
✅ shouldWriteBufferThatNotAlignedWithBytesPerSample

✅ WorkerThreadTest

✅ shouldEnqueueTaskAndExit