From 48f07b4a4091cb10dc4d179118e155f3a118dca8 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 26 Apr 2019 08:50:52 +0200 Subject: All API tests in parallel --- shared/extra-utils/miscs/sql.ts | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'shared/extra-utils/miscs') diff --git a/shared/extra-utils/miscs/sql.ts b/shared/extra-utils/miscs/sql.ts index 3cfae5c23..34477cb78 100644 --- a/shared/extra-utils/miscs/sql.ts +++ b/shared/extra-utils/miscs/sql.ts @@ -1,11 +1,12 @@ import { QueryTypes, Sequelize } from 'sequelize' +import { ServerInfo } from '../server/servers' let sequelizes: { [ id: number ]: Sequelize } = {} -function getSequelize (serverNumber: number) { - if (sequelizes[serverNumber]) return sequelizes[serverNumber] +function getSequelize (internalServerNumber: number) { + if (sequelizes[internalServerNumber]) return sequelizes[internalServerNumber] - const dbname = 'peertube_test' + serverNumber + const dbname = 'peertube_test' + internalServerNumber const username = 'peertube' const password = 'peertube' const host = 'localhost' @@ -18,37 +19,37 @@ function getSequelize (serverNumber: number) { logging: false }) - sequelizes[serverNumber] = seq + sequelizes[internalServerNumber] = seq return seq } -function setActorField (serverNumber: number, to: string, field: string, value: string) { - const seq = getSequelize(serverNumber) +function setActorField (internalServerNumber: number, to: string, field: string, value: string) { + const seq = getSequelize(internalServerNumber) const options = { type: QueryTypes.UPDATE } return seq.query(`UPDATE actor SET "${field}" = '${value}' WHERE url = '${to}'`, options) } -function setVideoField (serverNumber: number, uuid: string, field: string, value: string) { - const seq = getSequelize(serverNumber) +function setVideoField (internalServerNumber: number, uuid: string, field: string, value: string) { + const seq = getSequelize(internalServerNumber) const options = { type: QueryTypes.UPDATE } return seq.query(`UPDATE video SET "${field}" = '${value}' WHERE uuid = '${uuid}'`, options) } -function setPlaylistField (serverNumber: number, uuid: string, field: string, value: string) { - const seq = getSequelize(serverNumber) +function setPlaylistField (internalServerNumber: number, uuid: string, field: string, value: string) { + const seq = getSequelize(internalServerNumber) const options = { type: QueryTypes.UPDATE } return seq.query(`UPDATE "videoPlaylist" SET "${field}" = '${value}' WHERE uuid = '${uuid}'`, options) } -async function countVideoViewsOf (serverNumber: number, uuid: string) { - const seq = getSequelize(serverNumber) +async function countVideoViewsOf (internalServerNumber: number, uuid: string) { + const seq = getSequelize(internalServerNumber) // tslint:disable const query = `SELECT SUM("videoView"."views") AS "total" FROM "videoView" INNER JOIN "video" ON "video"."id" = "videoView"."videoId" WHERE "video"."uuid" = '${uuid}'` @@ -62,11 +63,11 @@ async function countVideoViewsOf (serverNumber: number, uuid: string) { return parseInt(total + '', 10) } -async function closeAllSequelize (servers: any[]) { - for (let i = 1; i <= servers.length; i++) { - if (sequelizes[ i ]) { - await sequelizes[ i ].close() - delete sequelizes[ i ] +async function closeAllSequelize (servers: ServerInfo[]) { + for (const server of servers) { + if (sequelizes[ server.internalServerNumber ]) { + await sequelizes[ server.internalServerNumber ].close() + delete sequelizes[ server.internalServerNumber ] } } } -- cgit v1.2.3