diff --git a/client/src/assets/player/types/manager-options.ts b/client/src/assets/player/types/manager-options.ts index 78b2e30f4..3fbcec29c 100644 --- a/client/src/assets/player/types/manager-options.ts +++ b/client/src/assets/player/types/manager-options.ts @@ -30,7 +30,7 @@ export interface CustomizationOptions { peertubeLink: boolean - playbackRate: number | string + playbackRate?: number | string } export interface CommonOptions extends CustomizationOptions { diff --git a/client/src/standalone/videos/shared/player-manager-options.ts b/client/src/standalone/videos/shared/player-manager-options.ts index b0bdb2dd9..f09c86d14 100644 --- a/client/src/standalone/videos/shared/player-manager-options.ts +++ b/client/src/standalone/videos/shared/player-manager-options.ts @@ -38,6 +38,7 @@ export class PlayerManagerOptions { private enableApi = false private startTime: number | string = 0 private stopTime: number | string + private playbackRate: number | string private title: boolean private warningTitle: boolean @@ -130,6 +131,7 @@ export class PlayerManagerOptions { this.subtitle = getParamString(params, 'subtitle') this.startTime = getParamString(params, 'start') this.stopTime = getParamString(params, 'stop') + this.playbackRate = getParamString(params, 'playbackRate') this.bigPlayBackgroundColor = getParamString(params, 'bigPlayBackgroundColor') this.foregroundColor = getParamString(params, 'foregroundColor') @@ -210,6 +212,8 @@ export class PlayerManagerOptions { ? playlistTracker.getCurrentElement().stopTimestamp : this.stopTime, + playbackRate: this.playbackRate, + videoCaptions, inactivityTimeout: 2500, videoViewUrl: this.videoFetcher.getVideoViewsUrl(video.uuid), diff --git a/server/tests/api/check-params/redundancy.ts b/server/tests/api/check-params/redundancy.ts index 908407b9a..73dfd489d 100644 --- a/server/tests/api/check-params/redundancy.ts +++ b/server/tests/api/check-params/redundancy.ts @@ -24,7 +24,7 @@ describe('Test server redundancy API validators', function () { // --------------------------------------------------------------- before(async function () { - this.timeout(80000) + this.timeout(160000) servers = await createMultipleServers(2) diff --git a/server/tests/api/notifications/moderation-notifications.ts b/server/tests/api/notifications/moderation-notifications.ts index df239f92e..c7b9b5fb0 100644 --- a/server/tests/api/notifications/moderation-notifications.ts +++ b/server/tests/api/notifications/moderation-notifications.ts @@ -500,7 +500,7 @@ describe('Test moderation notifications', function () { }) it('Should send notification to moderators on new video with auto-blacklist', async function () { - this.timeout(50000) + this.timeout(120000) videoName = 'video with auto-blacklist ' + buildUUID() const video = await servers[0].videos.upload({ token: userToken1, attributes: { name: videoName } }) @@ -512,10 +512,14 @@ describe('Test moderation notifications', function () { }) it('Should not send video publish notification if auto-blacklisted', async function () { + this.timeout(120000) + await checkVideoIsPublished({ ...userBaseParams, videoName, shortUUID, checkType: 'absence' }) }) it('Should not send a local user subscription notification if auto-blacklisted', async function () { + this.timeout(120000) + await checkNewVideoFromSubscription({ ...adminBaseParamsServer1, videoName, shortUUID, checkType: 'absence' }) }) @@ -524,7 +528,7 @@ describe('Test moderation notifications', function () { }) it('Should send video published and unblacklist after video unblacklisted', async function () { - this.timeout(40000) + this.timeout(120000) await servers[0].blacklist.remove({ videoId: uuid }) @@ -537,15 +541,19 @@ describe('Test moderation notifications', function () { }) it('Should send a local user subscription notification after removed from blacklist', async function () { + this.timeout(120000) + await checkNewVideoFromSubscription({ ...adminBaseParamsServer1, videoName, shortUUID, checkType: 'presence' }) }) it('Should send a remote user subscription notification after removed from blacklist', async function () { + this.timeout(120000) + await checkNewVideoFromSubscription({ ...adminBaseParamsServer2, videoName, shortUUID, checkType: 'presence' }) }) it('Should send unblacklist but not published/subscription notes after unblacklisted if scheduled update pending', async function () { - this.timeout(50000) + this.timeout(120000) const updateAt = new Date(new Date().getTime() + 1000000) @@ -576,7 +584,7 @@ describe('Test moderation notifications', function () { }) it('Should not send publish/subscription notifications after scheduled update if video still auto-blacklisted', async function () { - this.timeout(40000) + this.timeout(120000) // In 2 seconds const updateAt = new Date(new Date().getTime() + 2000) @@ -601,7 +609,7 @@ describe('Test moderation notifications', function () { }) it('Should not send a notification to moderators on new video without auto-blacklist', async function () { - this.timeout(50000) + this.timeout(120000) const name = 'video without auto-blacklist ' + buildUUID() diff --git a/server/tests/api/object-storage/video-static-file-privacy.ts b/server/tests/api/object-storage/video-static-file-privacy.ts index 71ad35a43..869d437d5 100644 --- a/server/tests/api/object-storage/video-static-file-privacy.ts +++ b/server/tests/api/object-storage/video-static-file-privacy.ts @@ -120,7 +120,7 @@ describe('Object storage for video static file privacy', function () { // --------------------------------------------------------------------------- it('Should upload a private video and have appropriate object storage ACL', async function () { - this.timeout(60000) + this.timeout(120000) { const { uuid } = await server.videos.quickUpload({ name: 'video', privacy: VideoPrivacy.PRIVATE }) @@ -138,7 +138,7 @@ describe('Object storage for video static file privacy', function () { }) it('Should upload a public video and have appropriate object storage ACL', async function () { - this.timeout(60000) + this.timeout(120000) const { uuid } = await server.videos.quickUpload({ name: 'video', privacy: VideoPrivacy.UNLISTED }) await waitJobs([ server ])