Skip to content

Commit

Permalink
feat(jest-dev-server): expose servers (#166)
Browse files Browse the repository at this point in the history
Closes #135
  • Loading branch information
xiaoyuhen authored and gregberge committed Dec 10, 2018
1 parent 746430b commit be650a3
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 2 deletions.
19 changes: 18 additions & 1 deletion packages/jest-dev-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ npm install --save-dev jest-dev-server

## Usage

`jest-dev-server` exports `setup` and `teardown` functions.
`jest-dev-server` exports `setup`,`teardown` and `getServers` functions.

```js
// global-setup.js
Expand Down Expand Up @@ -53,6 +53,23 @@ module.exports = async function globalSetup() {
}
```

```js
// global-setup.js
const { setup: setupDevServer, getServers} = require('jest-dev-server')

module.exports = async function globalSetup() {
await setupDevServer({
command: `node config/start.js --port=3000`,
launchTimeout: 50000,
port: 3000,
})
getServers.then(servers => {
// You can get to the servers and do whatever you want
})
// Your global setup
}
```

```js
// global-teardown.js
const { teardown: teardownDevServer } = require('jest-dev-server')
Expand Down
1 change: 1 addition & 0 deletions packages/jest-dev-server/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
module.exports.setup = require('./lib/global').setup
module.exports.getServers = require('./lib/global').getServers
module.exports.teardown = require('./lib/global').teardown
module.exports.ERROR_TIMEOUT = require('./lib/global').ERROR_TIMEOUT
module.exports.ERROR_PORT_USED = require('./lib/global').ERROR_PORT_USED
Expand Down
6 changes: 5 additions & 1 deletion packages/jest-dev-server/src/global.js
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ export async function setup(providedConfigs) {
)
}

export async function setupJestServer(providedConfig, index) {
async function setupJestServer(providedConfig, index) {
const config = { ...DEFAULT_CONFIG, ...providedConfig }

const usedPortHandlers = {
Expand Down Expand Up @@ -204,6 +204,10 @@ export async function setupJestServer(providedConfig, index) {
}
}

export function getServers() {
return servers
}

export async function teardown() {
if (servers.length) {
await Promise.all(servers.map(server => server.destroy()))
Expand Down

0 comments on commit be650a3

Please sign in to comment.