diff options
author | Chocobozzz <me@florianbigard.com> | 2021-09-06 08:13:11 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2021-09-06 08:13:11 +0200 |
commit | 70430c2796b6c0455a863edc62760a3d45951fc5 (patch) | |
tree | 7620d5a8db0c9b6cbf5a11d1c794875402828789 /shared/extra-utils | |
parent | 6d210220be0875d63461829d83c6e3a59d05cf7a (diff) | |
download | PeerTube-70430c2796b6c0455a863edc62760a3d45951fc5.tar.gz PeerTube-70430c2796b6c0455a863edc62760a3d45951fc5.tar.zst PeerTube-70430c2796b6c0455a863edc62760a3d45951fc5.zip |
Wait mock server termination
Diffstat (limited to 'shared/extra-utils')
4 files changed, 23 insertions, 3 deletions
diff --git a/shared/extra-utils/mock-servers/mock-object-storage.ts b/shared/extra-utils/mock-servers/mock-object-storage.ts index f1c5a6123..b6071b2f2 100644 --- a/shared/extra-utils/mock-servers/mock-object-storage.ts +++ b/shared/extra-utils/mock-servers/mock-object-storage.ts | |||
@@ -4,6 +4,7 @@ import { Server } from 'http' | |||
4 | import { pipeline } from 'stream' | 4 | import { pipeline } from 'stream' |
5 | import { randomInt } from '@shared/core-utils' | 5 | import { randomInt } from '@shared/core-utils' |
6 | import { ObjectStorageCommand } from '../server' | 6 | import { ObjectStorageCommand } from '../server' |
7 | import { terminateServer } from './utils' | ||
7 | 8 | ||
8 | export class MockObjectStorage { | 9 | export class MockObjectStorage { |
9 | private server: Server | 10 | private server: Server |
@@ -37,6 +38,6 @@ export class MockObjectStorage { | |||
37 | } | 38 | } |
38 | 39 | ||
39 | terminate () { | 40 | terminate () { |
40 | if (this.server) this.server.close() | 41 | return terminateServer(this.server) |
41 | } | 42 | } |
42 | } | 43 | } |
diff --git a/shared/extra-utils/mock-servers/mock-plugin-blocklist.ts b/shared/extra-utils/mock-servers/mock-plugin-blocklist.ts index 6f66bf4f0..6a71532b5 100644 --- a/shared/extra-utils/mock-servers/mock-plugin-blocklist.ts +++ b/shared/extra-utils/mock-servers/mock-plugin-blocklist.ts | |||
@@ -1,6 +1,7 @@ | |||
1 | import express, { Request, Response } from 'express' | 1 | import express, { Request, Response } from 'express' |
2 | import { Server } from 'http' | 2 | import { Server } from 'http' |
3 | import { randomInt } from '@shared/core-utils' | 3 | import { randomInt } from '@shared/core-utils' |
4 | import { terminateServer } from './utils' | ||
4 | 5 | ||
5 | type BlocklistResponse = { | 6 | type BlocklistResponse = { |
6 | data: { | 7 | data: { |
@@ -32,6 +33,6 @@ export class MockBlocklist { | |||
32 | } | 33 | } |
33 | 34 | ||
34 | terminate () { | 35 | terminate () { |
35 | if (this.server) this.server.close() | 36 | return terminateServer(this.server) |
36 | } | 37 | } |
37 | } | 38 | } |
diff --git a/shared/extra-utils/mock-servers/mock-proxy.ts b/shared/extra-utils/mock-servers/mock-proxy.ts index eb5f177c7..f955d3f9e 100644 --- a/shared/extra-utils/mock-servers/mock-proxy.ts +++ b/shared/extra-utils/mock-servers/mock-proxy.ts | |||
@@ -2,6 +2,7 @@ | |||
2 | import { createServer, Server } from 'http' | 2 | import { createServer, Server } from 'http' |
3 | import proxy from 'proxy' | 3 | import proxy from 'proxy' |
4 | import { randomInt } from '@shared/core-utils' | 4 | import { randomInt } from '@shared/core-utils' |
5 | import { terminateServer } from './utils' | ||
5 | 6 | ||
6 | class MockProxy { | 7 | class MockProxy { |
7 | private server: Server | 8 | private server: Server |
@@ -16,7 +17,7 @@ class MockProxy { | |||
16 | } | 17 | } |
17 | 18 | ||
18 | terminate () { | 19 | terminate () { |
19 | if (this.server) this.server.close() | 20 | return terminateServer(this.server) |
20 | } | 21 | } |
21 | } | 22 | } |
22 | 23 | ||
diff --git a/shared/extra-utils/mock-servers/utils.ts b/shared/extra-utils/mock-servers/utils.ts new file mode 100644 index 000000000..64d94c868 --- /dev/null +++ b/shared/extra-utils/mock-servers/utils.ts | |||
@@ -0,0 +1,17 @@ | |||
1 | import { Server } from 'http' | ||
2 | |||
3 | function terminateServer (server: Server) { | ||
4 | if (!server) return Promise.resolve() | ||
5 | |||
6 | return new Promise<void>((res, rej) => { | ||
7 | server.close(err => { | ||
8 | if (err) return rej(err) | ||
9 | |||
10 | return res() | ||
11 | }) | ||
12 | }) | ||
13 | } | ||
14 | |||
15 | export { | ||
16 | terminateServer | ||
17 | } | ||