X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=scripts%2Fbenchmark.ts;h=3c3c666a18e4a1cf77408257b5e21ff90eb456da;hb=7c8be859f77784eb34ff57de16a13ca9a925d554;hp=0cadb36d94a5897630783ac8b71bd68905491bdf;hpb=4024c44f9027a32809931de0692d40d001df721c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/scripts/benchmark.ts b/scripts/benchmark.ts index 0cadb36d9..3c3c666a1 100644 --- a/scripts/benchmark.ts +++ b/scripts/benchmark.ts @@ -1,22 +1,9 @@ -import { registerTSPaths } from '../server/helpers/register-ts-paths' -registerTSPaths() - -import * as autocannon from 'autocannon' -import { - addVideoCommentReply, - addVideoCommentThread, - createVideoCaption, - flushAndRunServer, - getVideosList, - killallServers, - ServerInfo, - setAccessTokensToServers, - uploadVideo -} from '@shared/extra-utils' -import { Video, VideoPrivacy } from '@shared/models' +import autocannon, { printResult } from 'autocannon' import { writeJson } from 'fs-extra' +import { Video, VideoPrivacy } from '@shared/models' +import { createSingleServer, killallServers, PeerTubeServer, setAccessTokensToServers } from '@shared/server-commands' -let server: ServerInfo +let server: PeerTubeServer let video: Video let threadId: number @@ -25,7 +12,7 @@ const outfile = process.argv[2] run() .catch(err => console.error(err)) .finally(() => { - if (server) killallServers([ server ]) + if (server) return killallServers([ server ]) }) function buildAuthorizationHeader () { @@ -145,7 +132,7 @@ async function run () { title: 'API - config', path: '/api/v1/config', expecter: (body, status) => { - return status === 200 && body.startsWith('{"instance":') + return status === 200 && body.startsWith('{"client":') } } ] @@ -159,7 +146,7 @@ async function run () { Object.assign(testResult, { title: test.title, path: test.path }) finalResult.push(testResult) - console.log(autocannon.printResult(testResult)) + console.log(printResult(testResult)) } if (outfile) await writeJson(outfile, finalResult) @@ -198,7 +185,7 @@ function runBenchmark (options: { } async function prepare () { - server = await flushAndRunServer(1, { + server = await createSingleServer(1, { rates_limit: { api: { max: 5_000_000 @@ -207,7 +194,7 @@ async function prepare () { }) await setAccessTokensToServers([ server ]) - const videoAttributes = { + const attributes = { name: 'my super video', category: 2, nsfw: true, @@ -220,33 +207,29 @@ async function prepare () { } for (let i = 0; i < 10; i++) { - Object.assign(videoAttributes, { name: 'my super video ' + i }) - await uploadVideo(server.url, server.accessToken, videoAttributes) + await server.videos.upload({ attributes: { ...attributes, name: 'my super video ' + i } }) } - const resVideos = await getVideosList(server.url) - video = resVideos.body.data.find(v => v.name === 'my super video 1') + const { data } = await server.videos.list() + video = data.find(v => v.name === 'my super video 1') for (let i = 0; i < 10; i++) { const text = 'my super first comment' - const res = await addVideoCommentThread(server.url, server.accessToken, video.id, text) - threadId = res.body.comment.id + const created = await server.comments.createThread({ videoId: video.id, text }) + threadId = created.id const text1 = 'my super answer to thread 1' - const childCommentRes = await addVideoCommentReply(server.url, server.accessToken, video.id, threadId, text1) - const childCommentId = childCommentRes.body.comment.id + const child = await server.comments.addReply({ videoId: video.id, toCommentId: threadId, text: text1 }) const text2 = 'my super answer to answer of thread 1' - await addVideoCommentReply(server.url, server.accessToken, video.id, childCommentId, text2) + await server.comments.addReply({ videoId: video.id, toCommentId: child.id, text: text2 }) const text3 = 'my second answer to thread 1' - await addVideoCommentReply(server.url, server.accessToken, video.id, threadId, text3) + await server.comments.addReply({ videoId: video.id, toCommentId: threadId, text: text3 }) } for (const caption of [ 'ar', 'fr', 'en', 'zh' ]) { - await createVideoCaption({ - url: server.url, - accessToken: server.accessToken, + await server.captions.add({ language: caption, videoId: video.id, fixture: 'subtitle-good2.vtt'