AVA 4 plugin which works like get-port
, but ensures the port is locked across all test files.
Install this as a development dependency alongside AVA itself:
npm install --save-dev @ava/get-port
import getPort from '@ava/get-port';
test.before('get port', async t => {
t.context.port = await getPort();
});
getPort()
reserves a port, such that no other concurrently executing test file also using getPort()
will select that same port. To ensure the port is available it then (briefly) listens. You can pass options used when listening. You can't pass port
though.