()
| 723 | } |
| 724 | |
| 725 | export async function getRandomPort() { |
| 726 | return new Promise<number>((resolve, reject) => { |
| 727 | let server = createServer() |
| 728 | server.unref() |
| 729 | server.on('error', reject) |
| 730 | server.listen(0, '127.0.0.1', () => { |
| 731 | let address = server.address() |
| 732 | server.close(() => { |
| 733 | if (address && typeof address === 'object') { |
| 734 | resolve(address.port) |
| 735 | } else { |
| 736 | reject(new Error('Unable to allocate random port')) |
| 737 | } |
| 738 | }) |
| 739 | }) |
| 740 | }) |
| 741 | } |
| 742 | |
| 743 | async function killProcessTree(child: ChildProcess) { |
| 744 | if (child.exitCode !== null || child.signalCode !== null || child.pid === undefined) { |
no test coverage detected