X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=server%2Ftests%2Fapi%2Fcheck-params%2Fvideos-common-filters.ts;h=3e44e2f674a3930eed57bfeb93a597172724cd74;hb=01283e2066314aaa167a2b0b55952b2ae26e650a;hp=11d9fd95bf800c831be9d4a884cb2af8fdb08893;hpb=1cddb979ac5ca92aa7defe75583755f4043d1338;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/check-params/videos-common-filters.ts b/server/tests/api/check-params/videos-common-filters.ts index 11d9fd95b..3e44e2f67 100644 --- a/server/tests/api/check-params/videos-common-filters.ts +++ b/server/tests/api/check-params/videos-common-filters.ts @@ -122,6 +122,8 @@ describe('Test video filters validators', function () { include?: VideoInclude privacyOneOf?: VideoPrivacy[] expectedStatus: HttpStatusCode + excludeAlreadyWatched?: boolean + unauthenticatedUser?: boolean }) { const paths = [ '/api/v1/video-channels/root_channel/videos', @@ -131,14 +133,19 @@ describe('Test video filters validators', function () { ] for (const path of paths) { + const token = options.unauthenticatedUser + ? undefined + : options.token || server.accessToken + await makeGetRequest({ url: server.url, path, - token: options.token || server.accessToken, + token, query: { isLocal: options.isLocal, privacyOneOf: options.privacyOneOf, - include: options.include + include: options.include, + excludeAlreadyWatched: options.excludeAlreadyWatched }, expectedStatus: options.expectedStatus }) @@ -213,6 +220,14 @@ describe('Test video filters validators', function () { } }) }) + + it('Should fail when trying to exclude already watched videos for an unlogged user', async function () { + await testEndpoints({ excludeAlreadyWatched: true, unauthenticatedUser: true, expectedStatus: HttpStatusCode.BAD_REQUEST_400 }) + }) + + it('Should succeed when trying to exclude already watched videos for a logged user', async function () { + await testEndpoints({ token: userAccessToken, excludeAlreadyWatched: true, expectedStatus: HttpStatusCode.OK_200 }) + }) }) after(async function () {