+ })
+
+ it('Should delete a channel and put the associated playlist in private mode', async function () {
+ this.timeout(30000)
+
+ const res = await addVideoChannel(servers[ 0 ].url, servers[ 0 ].accessToken, { name: 'super_channel', displayName: 'super channel' })
+ const videoChannelId = res.body.videoChannel.id
+
+ const res2 = await createVideoPlaylist({
+ url: servers[ 0 ].url,
+ token: servers[ 0 ].accessToken,
+ playlistAttrs: {
+ displayName: 'channel playlist',
+ privacy: VideoPlaylistPrivacy.PUBLIC,
+ videoChannelId
+ }
+ })
+ const videoPlaylistUUID = res2.body.videoPlaylist.uuid
+
+ await waitJobs(servers)
+
+ await deleteVideoChannel(servers[ 0 ].url, servers[ 0 ].accessToken, 'super_channel')
+
+ await waitJobs(servers)
+
+ const res3 = await getVideoPlaylistWithToken(servers[ 0 ].url, servers[ 0 ].accessToken, videoPlaylistUUID)
+ expect(res3.body.displayName).to.equal('channel playlist')
+ expect(res3.body.privacy.id).to.equal(VideoPlaylistPrivacy.PRIVATE)
+
+ await getVideoPlaylist(servers[ 1 ].url, videoPlaylistUUID, 404)
+ })
+
+ it('Should delete an account and delete its playlists', async function () {
+ this.timeout(30000)
+
+ const user = { username: 'user_1', password: 'password' }
+ const res = await createUser({
+ url: servers[ 0 ].url,
+ accessToken: servers[ 0 ].accessToken,
+ username: user.username,
+ password: user.password
+ })
+
+ const userId = res.body.user.id
+ const userAccessToken = await userLogin(servers[ 0 ], user)
+
+ const resChannel = await getMyUserInformation(servers[ 0 ].url, userAccessToken)
+ const userChannel = (resChannel.body as User).videoChannels[ 0 ]
+
+ await createVideoPlaylist({
+ url: servers[ 0 ].url,
+ token: userAccessToken,
+ playlistAttrs: {
+ displayName: 'playlist to be deleted',
+ privacy: VideoPlaylistPrivacy.PUBLIC,
+ videoChannelId: userChannel.id
+ }
+ })
+
+ await waitJobs(servers)
+
+ const finder = data => data.find(p => p.displayName === 'playlist to be deleted')
+
+ {
+ for (const server of [ servers[ 0 ], servers[ 1 ] ]) {
+ const res = await getVideoPlaylistsList(server.url, 0, 15)
+ expect(finder(res.body.data)).to.not.be.undefined
+ }
+ }
+
+ await removeUser(servers[ 0 ].url, userId, servers[ 0 ].accessToken)
+ await waitJobs(servers)
+
+ {
+ for (const server of [ servers[ 0 ], servers[ 1 ] ]) {
+ const res = await getVideoPlaylistsList(server.url, 0, 15)
+ expect(finder(res.body.data)).to.be.undefined
+ }
+ }
+ })