]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - shared/extra-utils/mock-servers/mock-proxy.ts
Translated using Weblate (Ukrainian)
[github/Chocobozzz/PeerTube.git] / shared / extra-utils / mock-servers / mock-proxy.ts
1
2 import { createServer, Server } from 'http'
3 import proxy from 'proxy'
4 import { randomInt } from '@shared/core-utils'
5
6 class MockProxy {
7 private server: Server
8
9 initialize () {
10 return new Promise<number>(res => {
11 const port = 42501 + randomInt(1, 100)
12
13 this.server = proxy(createServer())
14 this.server.listen(port, () => res(port))
15 })
16 }
17
18 terminate () {
19 if (this.server) this.server.close()
20 }
21 }
22
23 // ---------------------------------------------------------------------------
24
25 export {
26 MockProxy
27 }