uploadVideo,
uploadVideoAndGetId,
userLogin,
- waitJobs
+ waitJobs,
+ generateUserAccessToken
} from '../../../../shared/extra-utils'
import { VideoPlaylistPrivacy } from '../../../../shared/models/videos/playlist/video-playlist-privacy.model'
import { VideoPlaylist } from '../../../../shared/models/videos/playlist/video-playlist.model'
}
})
+ it('Should get private playlist for a classic user', async function () {
+ const token = await generateUserAccessToken(servers[0], 'toto')
+
+ const res = await getAccountPlaylistsListWithToken(servers[0].url, token, 'toto', 0, 5)
+
+ expect(res.body.total).to.equal(1)
+ expect(res.body.data).to.have.lengthOf(1)
+
+ const playlistId = res.body.data[0].id
+ await getPlaylistVideos(servers[0].url, token, playlistId, 0, 5)
+ })
+
it('Should create a playlist on server 1 and have the playlist on server 2 and 3', async function () {
this.timeout(30000)
}
})
+ it('Should be able to create a public playlist, and set it to private', async function () {
+ this.timeout(30000)
+
+ const res = await createVideoPlaylist({
+ url: servers[0].url,
+ token: servers[0].accessToken,
+ playlistAttrs: {
+ displayName: 'my super public playlist',
+ privacy: VideoPlaylistPrivacy.PUBLIC,
+ videoChannelId: servers[0].videoChannel.id
+ }
+ })
+ const videoPlaylistIds = res.body.videoPlaylist
+
+ await waitJobs(servers)
+
+ for (const server of servers) {
+ await getVideoPlaylist(server.url, videoPlaylistIds.uuid, 200)
+ }
+
+ const playlistAttrs = { privacy: VideoPlaylistPrivacy.PRIVATE }
+ await updateVideoPlaylist({ url: servers[0].url, token: servers[0].accessToken, playlistId: videoPlaylistIds.id, playlistAttrs })
+
+ await waitJobs(servers)
+
+ for (const server of [ servers[1], servers[2] ]) {
+ await getVideoPlaylist(server.url, videoPlaylistIds.uuid, 404)
+ }
+ await getVideoPlaylist(servers[0].url, videoPlaylistIds.uuid, 401)
+
+ await getVideoPlaylistWithToken(servers[0].url, servers[0].accessToken, videoPlaylistIds.uuid, 200)
+ })
+
it('Should delete the playlist on server 1 and delete on server 2 and 3', async function () {
this.timeout(30000)