X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Ftests%2Fapi%2Fcheck-params%2Fvideo-blacklist.ts;h=8e1206db3e26e610d8703a13d07247baee2db739;hb=6e7e63b83f08ba68edc2bb9f72ff03d1802e45df;hp=4154747183e7b1e20951c02e0c7710354f1e0327;hpb=26b7305a232e547709f433a6edf700bf495935d8;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/check-params/video-blacklist.ts b/server/tests/api/check-params/video-blacklist.ts index 415474718..8e1206db3 100644 --- a/server/tests/api/check-params/video-blacklist.ts +++ b/server/tests/api/check-params/video-blacklist.ts @@ -5,7 +5,7 @@ import 'mocha' import { createUser, flushTests, - getBlacklistedVideosList, + getBlacklistedVideosList, getVideo, getVideoWithToken, killallServers, makePostBodyRequest, makePutBodyRequest, @@ -15,13 +15,20 @@ import { setAccessTokensToServers, uploadVideo, userLogin -} from '../../utils' -import { checkBadCountPagination, checkBadSortPagination, checkBadStartPagination } from '../../utils/requests/check-api-params' +} from '../../../../shared/utils' +import { + checkBadCountPagination, + checkBadSortPagination, + checkBadStartPagination +} from '../../../../shared/utils/requests/check-api-params' +import { VideoDetails } from '../../../../shared/models/videos' +import { expect } from 'chai' describe('Test video blacklist API validators', function () { let server: ServerInfo let notBlacklistedVideoId: number - let userAccessToken = '' + let userAccessToken1 = '' + let userAccessToken2 = '' // --------------------------------------------------------------- @@ -34,13 +41,22 @@ describe('Test video blacklist API validators', function () { await setAccessTokensToServers([ server ]) - const username = 'user1' - const password = 'my super password' - await createUser(server.url, server.accessToken, username, password) - userAccessToken = await userLogin(server, { username, password }) + { + const username = 'user1' + const password = 'my super password' + await createUser(server.url, server.accessToken, username, password) + userAccessToken1 = await userLogin(server, { username, password }) + } { - const res = await uploadVideo(server.url, server.accessToken, {}) + const username = 'user2' + const password = 'my super password' + await createUser(server.url, server.accessToken, username, password) + userAccessToken2 = await userLogin(server, { username, password }) + } + + { + const res = await uploadVideo(server.url, userAccessToken1, {}) server.video = res.body.video } @@ -74,7 +90,7 @@ describe('Test video blacklist API validators', function () { it('Should fail with a non admin user', async function () { const path = basePath + server.video + '/blacklist' const fields = {} - await makePostBodyRequest({ url: server.url, path, token: userAccessToken, fields, statusCodeExpected: 403 }) + await makePostBodyRequest({ url: server.url, path, token: userAccessToken2, fields, statusCodeExpected: 403 }) }) it('Should fail with an invalid reason', async function () { @@ -116,7 +132,7 @@ describe('Test video blacklist API validators', function () { it('Should fail with a non admin user', async function () { const path = basePath + server.video + '/blacklist' const fields = {} - await makePutBodyRequest({ url: server.url, path, token: userAccessToken, fields, statusCodeExpected: 403 }) + await makePutBodyRequest({ url: server.url, path, token: userAccessToken2, fields, statusCodeExpected: 403 }) }) it('Should fail with an invalid reason', async function () { @@ -134,13 +150,38 @@ describe('Test video blacklist API validators', function () { }) }) + describe('When getting blacklisted video', function () { + + it('Should fail with a non authenticated user', async function () { + await getVideo(server.url, server.video.uuid, 401) + }) + + it('Should fail with another user', async function () { + await getVideoWithToken(server.url, userAccessToken2, server.video.uuid, 403) + }) + + it('Should succeed with the owner authenticated user', async function () { + const res = await getVideoWithToken(server.url, userAccessToken1, server.video.uuid, 200) + const video: VideoDetails = res.body + + expect(video.blacklisted).to.be.true + }) + + it('Should succeed with an admin', async function () { + const res = await getVideoWithToken(server.url, server.accessToken, server.video.uuid, 200) + const video: VideoDetails = res.body + + expect(video.blacklisted).to.be.true + }) + }) + describe('When removing a video in blacklist', function () { it('Should fail with a non authenticated user', async function () { await removeVideoFromBlacklist(server.url, 'fake token', server.video.uuid, 401) }) it('Should fail with a non admin user', async function () { - await removeVideoFromBlacklist(server.url, userAccessToken, server.video.uuid, 403) + await removeVideoFromBlacklist(server.url, userAccessToken2, server.video.uuid, 403) }) it('Should fail with an incorrect id', async function () { @@ -165,7 +206,7 @@ describe('Test video blacklist API validators', function () { }) it('Should fail with a non admin user', async function () { - await getBlacklistedVideosList(server.url, userAccessToken, 403) + await getBlacklistedVideosList(server.url, userAccessToken2, 403) }) it('Should fail with a bad start pagination', async function () {