1
0
Fork 0
mirror of https://github.com/Chocobozzz/PeerTube.git synced 2025-10-06 03:50:26 +02:00

Server: Bulk update videos support field

This commit is contained in:
Chocobozzz 2019-05-31 16:30:11 +02:00
parent 9977c12838
commit 7d14d4d2ca
No known key found for this signature in database
GPG key ID: 583A612D890159BE
11 changed files with 154 additions and 32 deletions

View file

@ -24,6 +24,7 @@ import {
checkBadStartPagination
} from '../../../../shared/extra-utils/requests/check-api-params'
import { join } from 'path'
import { VideoChannelUpdate } from '../../../../shared/models/videos'
const expect = chai.expect
@ -169,9 +170,11 @@ describe('Test video channels API validator', function () {
})
describe('When updating a video channel', function () {
const baseCorrectParams = {
const baseCorrectParams: VideoChannelUpdate = {
displayName: 'hello',
description: 'super description'
description: 'super description',
support: 'toto',
bulkVideosSupportUpdate: false
}
let path: string
@ -214,6 +217,11 @@ describe('Test video channels API validator', function () {
await makePutBodyRequest({ url: server.url, path, token: server.accessToken, fields })
})
it('Should fail with a bad bulkVideosSupportUpdate field', async function () {
const fields = immutableAssign(baseCorrectParams, { bulkVideosSupportUpdate: 'super' })
await makePutBodyRequest({ url: server.url, path, token: server.accessToken, fields })
})
it('Should succeed with the correct parameters', async function () {
await makePutBodyRequest({
url: server.url,

View file

@ -2,12 +2,12 @@
import * as chai from 'chai'
import 'mocha'
import { User, Video, VideoChannel } from '../../../../shared/index'
import { User, Video, VideoChannel, VideoDetails } from '../../../../shared/index'
import {
cleanupTests,
createUser,
doubleFollow,
flushAndRunMultipleServers,
flushAndRunMultipleServers, getVideo,
getVideoChannelVideos,
testImage,
updateVideo,
@ -79,7 +79,8 @@ describe('Test video channels', function () {
// The channel is 1 is propagated to servers 2
{
const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, { name: 'my video name', channelId: secondVideoChannelId })
const videoAttributesArg = { name: 'my video name', channelId: secondVideoChannelId, support: 'video support field' }
const res = await uploadVideo(servers[ 0 ].url, servers[ 0 ].accessToken, videoAttributesArg)
videoUUID = res.body.video.uuid
}
@ -201,12 +202,12 @@ describe('Test video channels', function () {
})
it('Should update video channel', async function () {
this.timeout(5000)
this.timeout(15000)
const videoChannelAttributes = {
displayName: 'video channel updated',
description: 'video channel description updated',
support: 'video channel support text updated'
support: 'support updated'
}
await updateVideoChannel(servers[0].url, servers[0].accessToken, 'second_video_channel', videoChannelAttributes)
@ -224,7 +225,36 @@ describe('Test video channels', function () {
expect(res.body.data[0].name).to.equal('second_video_channel')
expect(res.body.data[0].displayName).to.equal('video channel updated')
expect(res.body.data[0].description).to.equal('video channel description updated')
expect(res.body.data[0].support).to.equal('video channel support text updated')
expect(res.body.data[0].support).to.equal('support updated')
}
})
it('Should not have updated the video support field', async function () {
for (const server of servers) {
const res = await getVideo(server.url, videoUUID)
const video: VideoDetails = res.body
expect(video.support).to.equal('video support field')
}
})
it('Should update the channel support field and update videos too', async function () {
this.timeout(35000)
const videoChannelAttributes = {
support: 'video channel support text updated',
bulkVideosSupportUpdate: true
}
await updateVideoChannel(servers[0].url, servers[0].accessToken, 'second_video_channel', videoChannelAttributes)
await waitJobs(servers)
for (const server of servers) {
const res = await getVideo(server.url, videoUUID)
const video: VideoDetails = res.body
expect(video.support).to.equal(videoChannelAttributes.support)
}
})