+ describe('When updating a video abuse', function () {
+ const basePath = '/api/v1/videos/'
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ let path: string
+
+ before(() => {
+ path = basePath + server.video.id + '/abuse/' + videoAbuseId
+ })
+
+ it('Should fail with a non authenticated user', async function () {
+ await updateVideoAbuse(server.url, 'blabla', server.video.uuid, videoAbuseId, {}, 401)
+ })
+
+ it('Should fail with a non admin user', async function () {
+ await updateVideoAbuse(server.url, userAccessToken, server.video.uuid, videoAbuseId, {}, 403)
+ })
+
+ it('Should fail with a bad video id or bad video abuse id', async function () {
+ await updateVideoAbuse(server.url, server.accessToken, server.video.uuid, 45, {}, 404)
+ await updateVideoAbuse(server.url, server.accessToken, 52, videoAbuseId, {}, 404)
+ })
+
+ it('Should fail with a bad state', async function () {
+ const body = { state: 5 }
+ await updateVideoAbuse(server.url, server.accessToken, server.video.uuid, videoAbuseId, body, 400)
+ })
+
+ it('Should fail with a bad moderation comment', async function () {
+ const body = { moderationComment: 'b'.repeat(3001) }
+ await updateVideoAbuse(server.url, server.accessToken, server.video.uuid, videoAbuseId, body, 400)
+ })
+
+ it('Should succeed with the correct params', async function () {
+ const body = { state: VideoAbuseState.ACCEPTED }
+ await updateVideoAbuse(server.url, server.accessToken, server.video.uuid, videoAbuseId, body)
+ })
+ })