X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Ftests%2Fapi%2Fcheck-params%2Fvideo-captions.ts;h=1ce2202d2a63c2c1d381a24af6cc9c48ab8d4de3;hb=3d470a530c4a48b2e4f4a9e7d4f223e14f32cea4;hp=8d46971a16c37bf3977cef6acc1ab41f1d5483fa;hpb=3d52b300ea79bec21f090e2447c4808307078618;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/tests/api/check-params/video-captions.ts b/server/tests/api/check-params/video-captions.ts index 8d46971a1..1ce2202d2 100644 --- a/server/tests/api/check-params/video-captions.ts +++ b/server/tests/api/check-params/video-captions.ts @@ -1,21 +1,22 @@ -/* tslint:disable:no-unused-expression */ +/* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */ import 'mocha' + +import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes' import { + buildAbsoluteFixturePath, + cleanupTests, createUser, - flushTests, - killallServers, + flushAndRunServer, makeDeleteRequest, makeGetRequest, makeUploadRequest, - runServer, ServerInfo, setAccessTokensToServers, uploadVideo, userLogin -} from '../../utils' -import { join } from 'path' -import { createVideoCaption } from '../../utils/videos/video-captions' +} from '../../../../shared/extra-utils' +import { createVideoCaption } from '../../../../shared/extra-utils/videos/video-captions' describe('Test video captions API validator', function () { const path = '/api/v1/videos/' @@ -29,9 +30,7 @@ describe('Test video captions API validator', function () { before(async function () { this.timeout(30000) - await flushTests() - - server = await runServer(1) + server = await flushAndRunServer(1) await setAccessTokensToServers([ server ]) @@ -45,7 +44,7 @@ describe('Test video captions API validator', function () { username: 'user1', password: 'my super password' } - await createUser(server.url, server.accessToken, user.username, user.password) + await createUser({ url: server.url, accessToken: server.accessToken, username: user.username, password: user.password }) userAccessToken = await userLogin(server, user) } }) @@ -53,14 +52,14 @@ describe('Test video captions API validator', function () { describe('When adding video caption', function () { const fields = { } const attaches = { - 'captionfile': join(__dirname, '..', '..', 'fixtures', 'subtitle-good1.vtt') + captionfile: buildAbsoluteFixturePath('subtitle-good1.vtt') } it('Should fail without a valid uuid', async function () { await makeUploadRequest({ method: 'PUT', url: server.url, - path: path + '4da6fde3-88f7-4d16-b119-108df563d0b06/captions', + path: path + '4da6fde3-88f7-4d16-b119-108df563d0b06/captions/fr', token: server.accessToken, fields, attaches @@ -71,10 +70,11 @@ describe('Test video captions API validator', function () { await makeUploadRequest({ method: 'PUT', url: server.url, - path: path + '4da6fde3-88f7-4d16-b119-108df5630b06/captions', + path: path + '4da6fde3-88f7-4d16-b119-108df5630b06/captions/fr', token: server.accessToken, fields, - attaches + attaches, + statusCodeExpected: 404 }) }) @@ -110,7 +110,7 @@ describe('Test video captions API validator', function () { path: captionPath, fields, attaches, - statusCodeExpected: 401 + statusCodeExpected: HttpStatusCode.UNAUTHORIZED_401 }) }) @@ -123,26 +123,27 @@ describe('Test video captions API validator', function () { token: 'blabla', fields, attaches, - statusCodeExpected: 401 + statusCodeExpected: HttpStatusCode.UNAUTHORIZED_401 }) }) - it('Should fail with an invalid captionfile extension', async function () { - const attaches = { - 'captionfile': join(__dirname, '..', '..', 'fixtures', 'subtitle-bad.txt') - } - - const captionPath = path + videoUUID + '/captions/fr' - await makeUploadRequest({ - method: 'PUT', - url: server.url, - path: captionPath, - token: server.accessToken, - fields, - attaches, - statusCodeExpected: 400 - }) - }) + // We accept any file now + // it('Should fail with an invalid captionfile extension', async function () { + // const attaches = { + // 'captionfile': buildAbsoluteFixturePath('subtitle-bad.txt') + // } + // + // const captionPath = path + videoUUID + '/captions/fr' + // await makeUploadRequest({ + // method: 'PUT', + // url: server.url, + // path: captionPath, + // token: server.accessToken, + // fields, + // attaches, + // statusCodeExpected: HttpStatusCode.BAD_REQUEST_400 + // }) + // }) // We don't check the extension yet // it('Should fail with an invalid captionfile extension and octet-stream mime type', async function () { @@ -153,7 +154,7 @@ describe('Test video captions API validator', function () { // videoId: videoUUID, // fixture: 'subtitle-bad.txt', // mimeType: 'application/octet-stream', - // statusCodeExpected: 400 + // statusCodeExpected: HttpStatusCode.BAD_REQUEST_400 // }) // }) @@ -171,7 +172,7 @@ describe('Test video captions API validator', function () { // We don't check the file validity yet // it('Should fail with an invalid captionfile srt', async function () { // const attaches = { - // 'captionfile': join(__dirname, '..', '..', 'fixtures', 'subtitle-bad.srt') + // 'captionfile': buildAbsoluteFixturePath('subtitle-bad.srt') // } // // const captionPath = path + videoUUID + '/captions/fr' @@ -182,7 +183,7 @@ describe('Test video captions API validator', function () { // token: server.accessToken, // fields, // attaches, - // statusCodeExpected: 500 + // statusCodeExpected: HttpStatusCode.INTERNAL_SERVER_ERROR_500 // }) // }) @@ -195,7 +196,7 @@ describe('Test video captions API validator', function () { token: server.accessToken, fields, attaches, - statusCodeExpected: 204 + statusCodeExpected: HttpStatusCode.NO_CONTENT_204 }) }) }) @@ -206,11 +207,15 @@ describe('Test video captions API validator', function () { }) it('Should fail with an unknown id', async function () { - await makeGetRequest({ url: server.url, path: path + '4da6fde3-88f7-4d16-b119-108df5630b06/captions', statusCodeExpected: 404 }) + await makeGetRequest({ + url: server.url, + path: path + '4da6fde3-88f7-4d16-b119-108df5630b06/captions', + statusCodeExpected: HttpStatusCode.NOT_FOUND_404 + }) }) it('Should success with the correct parameters', async function () { - await makeGetRequest({ url: server.url, path: path + videoUUID + '/captions', statusCodeExpected: 200 }) + await makeGetRequest({ url: server.url, path: path + videoUUID + '/captions', statusCodeExpected: HttpStatusCode.OK_200 }) }) }) @@ -228,7 +233,7 @@ describe('Test video captions API validator', function () { url: server.url, path: path + '4da6fde3-88f7-4d16-b119-108df5630b06/captions/fr', token: server.accessToken, - statusCodeExpected: 404 + statusCodeExpected: HttpStatusCode.NOT_FOUND_404 }) }) @@ -252,31 +257,36 @@ describe('Test video captions API validator', function () { it('Should fail without access token', async function () { const captionPath = path + videoUUID + '/captions/fr' - await makeDeleteRequest({ url: server.url, path: captionPath, statusCodeExpected: 401 }) + await makeDeleteRequest({ url: server.url, path: captionPath, statusCodeExpected: HttpStatusCode.UNAUTHORIZED_401 }) }) it('Should fail with a bad access token', async function () { const captionPath = path + videoUUID + '/captions/fr' - await makeDeleteRequest({ url: server.url, path: captionPath, token: 'coucou', statusCodeExpected: 401 }) + await makeDeleteRequest({ url: server.url, path: captionPath, token: 'coucou', statusCodeExpected: HttpStatusCode.UNAUTHORIZED_401 }) }) it('Should fail with another user', async function () { const captionPath = path + videoUUID + '/captions/fr' - await makeDeleteRequest({ url: server.url, path: captionPath, token: userAccessToken, statusCodeExpected: 403 }) + await makeDeleteRequest({ + url: server.url, + path: captionPath, + token: userAccessToken, + statusCodeExpected: HttpStatusCode.FORBIDDEN_403 + }) }) it('Should success with the correct parameters', async function () { const captionPath = path + videoUUID + '/captions/fr' - await makeDeleteRequest({ url: server.url, path: captionPath, token: server.accessToken, statusCodeExpected: 204 }) + await makeDeleteRequest({ + url: server.url, + path: captionPath, + token: server.accessToken, + statusCodeExpected: HttpStatusCode.NO_CONTENT_204 + }) }) }) after(async function () { - killallServers([ server ]) - - // Keep the logs if the test failed - if (this['ok']) { - await flushTests() - } + await cleanupTests([ server ]) }) })