File tree Expand file tree Collapse file tree 8 files changed +18
-38
lines changed Expand file tree Collapse file tree 8 files changed +18
-38
lines changed Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1
1
# @ava/get-port
2
2
3
- Experimental AVA plugin which works like [ ` get-port ` ] ( https://github.com/sindresorhus/get-port ) , but ensures the port is locked across all test files.
3
+ AVA 4 plugin which works like [ ` get-port ` ] ( https://github.com/sindresorhus/get-port ) , but ensures the port is locked across all test files.
4
4
5
5
Install this as a development dependency alongside AVA itself:
6
6
7
7
``` console
8
8
npm install --save-dev @ava/get-port
9
9
```
10
10
11
- Then make sure you've enabled the shared workers experiment:
12
-
13
- ` ava.config.js ` :
14
-
15
- ``` js
16
- export default {
17
- nonSemVerExperiments: {
18
- sharedWorkers: true
19
- }
20
- };
21
- ```
22
-
23
11
## Usage
24
12
25
13
``` ts
26
- const { default : getPort} = require ( ' @ava/get-port' ) ;
14
+ import getPort from ' @ava/get-port' ;
27
15
28
16
test .before (' get port' , async t => {
29
17
t .context .port = await getPort ();
Original file line number Diff line number Diff line change 1
1
export default { // eslint-disable-line import/no-anonymous-default-export
2
2
files : [ '!dist/**' ] ,
3
- nonSemVerExperiments : {
4
- sharedWorkers : true ,
5
- } ,
6
3
typescript : {
4
+ compile : false ,
7
5
rewritePaths : {
8
6
'test/' : 'dist/test/' ,
9
7
} ,
Original file line number Diff line number Diff line change 8
8
"files" : [
9
9
" dist/source"
10
10
],
11
- "main" : " dist/source" ,
11
+ "type" : " module" ,
12
+ "exports" : {
13
+ "." : " ./dist/source/index.js"
14
+ },
12
15
"types" : " dist/source/index.d.ts" ,
13
16
"scripts" : {
14
17
"build" : " del-cli dist && tsc" ,
26
29
"repository" : " avajs/get-port" ,
27
30
"license" : " MIT" ,
28
31
"devDependencies" : {
29
- "@ava/typescript" : " ^1.1.1 " ,
30
- "@sindresorhus/tsconfig" : " ^0.7 .0" ,
31
- "ava" : " ^3.13.0 " ,
32
+ "@ava/typescript" : " ^3.0.0 " ,
33
+ "@sindresorhus/tsconfig" : " ^2.0 .0" ,
34
+ "ava" : " 4.0.0-rc.1 " ,
32
35
"c8" : " ^7.10.0" ,
33
36
"del-cli" : " ^4.0.1" ,
34
37
"tsd" : " ^0.18.0" ,
35
38
"typescript" : " ^4.4.4" ,
36
39
"xo" : " ^0.46.4"
37
40
},
38
41
"dependencies" : {
39
- "@ava/cooperate" : " ^0.1 .0"
42
+ "@ava/cooperate" : " ^1.0 .0"
40
43
},
41
44
"peerDependencies" : {
42
45
"ava" : " *"
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ import crypto from 'node:crypto';
2
2
import net from 'node:net' ;
3
3
import { SharedContext } from '@ava/cooperate' ;
4
4
5
- const context = new SharedContext ( __filename ) ;
5
+ const context = new SharedContext ( import . meta . url ) ;
6
6
7
7
// Reserve a range of 16 addresses at a random offset.
8
8
const reserveRange = async ( ) : Promise < number [ ] > => {
Original file line number Diff line number Diff line change 1
1
import { expectError } from 'tsd' ;
2
- import getPort from '..' ;
2
+ import getPort from '../source/index.js ' ;
3
3
4
4
expectError ( await getPort ( { port : 1024 } ) ) ;
Original file line number Diff line number Diff line change 1
1
import net from 'node:net' ;
2
2
import { promisify } from 'node:util' ;
3
3
import test from 'ava' ;
4
- import getPort from '../source' ;
4
+ import getPort from '../source/index.js ' ;
5
5
6
6
test ( 'gets up to 16 ports in a block' , async t => {
7
7
const first = await getPort ( ) ;
@@ -28,8 +28,9 @@ test('port can be bound', async t => {
28
28
t . teardown ( ( ) => server . close ( ) ) ;
29
29
30
30
const port = await getPort ( ) ;
31
- await promisify ( server . listen . bind ( server ) ) ( port ) ;
32
- t . is ( ( server . address ( ) as any ) . port , port ) ;
31
+ const listen : ( port : number ) => Promise < void > = promisify ( server . listen . bind ( server ) ) ;
32
+ await listen ( port ) ;
33
+ t . is ( ( server . address ( ) as net . AddressInfo ) . port , port ) ;
33
34
} ) ;
34
35
35
36
test ( 'can get ports simultaneously' , async t => {
Original file line number Diff line number Diff line change 1
1
{
2
- "extends" : " @sindresorhus/tsconfig" ,
2
+ "extends" : " @sindresorhus/tsconfig/tsconfig.json " ,
3
3
"compilerOptions" : {
4
4
"outDir" : " dist" ,
5
- "target" : " es2019" , // Node.js 12
6
- "lib" : [
7
- " es2019"
8
- ],
9
- "esModuleInterop" : true ,
10
5
"sourceMap" : true
11
6
},
12
7
"include" : [
You can’t perform that action at this time.
0 commit comments