From 66c15f30f83cffc5220ed2a92955ea1a35d3753d Mon Sep 17 00:00:00 2001 From: Roy Bregman <48884909+RoyBregman@users.noreply.github.com> Date: Thu, 28 Jan 2021 08:44:07 +0200 Subject: [PATCH] fix(FEC-10699): objectType KalturaLiveAsset should check enableTrickPlay even if externalIds > 0 (#137) I switched the if else order to give precedence to KalturaLiveAsset enableTrickPlay Updated tests accordingly --- src/k-provider/ott/provider-parser.js | 6 +++--- test/src/k-provider/ott/provider-parser.spec.js | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/k-provider/ott/provider-parser.js b/src/k-provider/ott/provider-parser.js index 62ff503..830b098 100644 --- a/src/k-provider/ott/provider-parser.js +++ b/src/k-provider/ott/provider-parser.js @@ -22,10 +22,10 @@ const MediaTypeCombinations: {[mediaType: string]: Object} = { [KalturaAsset.Type.MEDIA]: { [KalturaPlaybackContext.Type.TRAILER]: () => ({type: MediaEntry.Type.VOD}), [KalturaPlaybackContext.Type.PLAYBACK]: mediaAssetData => { - if (parseInt(mediaAssetData.externalIds) > 0) { - return {type: MediaEntry.Type.LIVE, dvrStatus: MediaEntry.DvrStatus.OFF}; - } else if (mediaAssetData.objectType === LIVE_ASST_OBJECT_TYPE) { + if (mediaAssetData.objectType === LIVE_ASST_OBJECT_TYPE) { return {type: MediaEntry.Type.LIVE, dvrStatus: mediaAssetData.enableTrickPlay ? MediaEntry.DvrStatus.ON : MediaEntry.DvrStatus.OFF}; + } else if (parseInt(mediaAssetData.externalIds) > 0) { + return {type: MediaEntry.Type.LIVE, dvrStatus: MediaEntry.DvrStatus.OFF}; } return {type: MediaEntry.Type.VOD}; } diff --git a/test/src/k-provider/ott/provider-parser.spec.js b/test/src/k-provider/ott/provider-parser.spec.js index 8c03fb3..be92a94 100644 --- a/test/src/k-provider/ott/provider-parser.spec.js +++ b/test/src/k-provider/ott/provider-parser.spec.js @@ -3,13 +3,13 @@ import {MediaLiveAssetData} from './be-data'; describe('provider parser', function () { describe('_getMediaType', () => { - it('should check KalturaLiveAsset with externalIds returns live with dvr false', done => { + it('should check KalturaLiveAsset with enableTrickPlay true and externalIds > 0 returns live with dvr', done => { const typeData = OTTProviderParser._getMediaType(MediaLiveAssetData, 'media', 'PLAYBACK'); typeData.type.should.equal('Live'); - typeData.dvrStatus.should.equal(0); + typeData.dvrStatus.should.equal(1); done(); }); - it('should check KalturaLiveAsset with trickPlay false returns live with dvr false', done => { + it('should check KalturaLiveAsset with enableTrickPlay false returns live with dvr false', done => { const MediaLiveAssetDataCopy = JSON.parse(JSON.stringify(MediaLiveAssetData)); MediaLiveAssetDataCopy.externalIds = 0; MediaLiveAssetDataCopy.enableTrickPlay = false; @@ -18,7 +18,7 @@ describe('provider parser', function () { typeData.dvrStatus.should.equal(0); done(); }); - it('should check KalturaLiveAsset with trickPlay true returns live with dvr true', done => { + it('should check KalturaLiveAsset with enableTrickPlay true returns live with dvr true', done => { const MediaLiveAssetDataCopy = JSON.parse(JSON.stringify(MediaLiveAssetData)); MediaLiveAssetDataCopy.externalIds = 0; const typeData = OTTProviderParser._getMediaType(MediaLiveAssetDataCopy, 'media', 'PLAYBACK');