Skip to content

Commit 4959eeb

Browse files
committed
test: Switch from leaked-handles to wtfnode
See my comments at #2563 (comment)
1 parent c17f3ff commit 4959eeb

File tree

4 files changed

+35
-22
lines changed

4 files changed

+35
-22
lines changed

package.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -48,22 +48,23 @@
4848
"@types/tar-fs": "^2.0.0",
4949
"@types/tar-stream": "^2.1.0",
5050
"@types/ws": "^7.2.6",
51+
"@types/wtfnode": "^0.7.0",
5152
"@typescript-eslint/eslint-plugin": "^4.7.0",
5253
"@typescript-eslint/parser": "^4.7.0",
5354
"doctoc": "^1.4.0",
5455
"eslint": "^7.7.0",
5556
"eslint-config-prettier": "^6.0.0",
5657
"eslint-plugin-import": "^2.18.2",
5758
"eslint-plugin-prettier": "^3.1.0",
58-
"leaked-handles": "^5.2.0",
5959
"mocha": "^8.1.2",
6060
"parcel-bundler": "^1.12.4",
6161
"prettier": "^2.0.5",
6262
"stylelint": "^13.0.0",
6363
"stylelint-config-recommended": "^3.0.0",
6464
"supertest": "^6.0.1",
6565
"ts-node": "^9.0.0",
66-
"typescript": "4.0.2"
66+
"typescript": "4.0.2",
67+
"wtfnode": "^0.8.4"
6768
},
6869
"resolutions": {
6970
"@types/node": "^12.12.7",

test/socket.test.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
import { field, logger } from "@coder/logger"
22
import * as assert from "assert"
33
import * as fs from "fs-extra"
4-
import "leaked-handles"
54
import * as net from "net"
65
import * as path from "path"
76
import * as tls from "tls"
87
import { Emitter } from "../src/common/emitter"
98
import { SocketProxyProvider } from "../src/node/socket"
109
import { generateCertificate, tmpdir } from "../src/node/util"
10+
import * as wtfnode from "./wtfnode"
1111

1212
describe("SocketProxyProvider", () => {
13+
wtfnode.setup()
14+
1315
const provider = new SocketProxyProvider()
1416

1517
const onServerError = new Emitter<{ event: string; error: Error }>()

test/wtfnode.ts

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import * as wtfnode from "wtfnode"
2+
3+
let active = false
4+
5+
export function setup(): void {
6+
if (active) {
7+
return
8+
}
9+
active = true
10+
11+
const interval = 5000
12+
const wtfnodeDump = () => {
13+
wtfnode.dump()
14+
const t = setTimeout(wtfnodeDump, interval)
15+
t.unref()
16+
}
17+
const t = setTimeout(wtfnodeDump, interval)
18+
t.unref()
19+
}

yarn.lock

+10-19
Original file line numberDiff line numberDiff line change
@@ -1226,6 +1226,11 @@
12261226
dependencies:
12271227
"@types/node" "*"
12281228

1229+
"@types/wtfnode@^0.7.0":
1230+
version "0.7.0"
1231+
resolved "https://registry.yarnpkg.com/@types/wtfnode/-/wtfnode-0.7.0.tgz#e5d9c675bccc2f786830ffa40ffe8865f92057d9"
1232+
integrity sha512-kdBHgE9+M1Os7UqWZtiLhKye5reFl8cPBYyCsP2fatwZRz7F7GdIxIHZ20Kkc0hYBfbXE+lzPOTUU1I0qgjtHA==
1233+
12291234
"@typescript-eslint/eslint-plugin@^4.7.0":
12301235
version "4.7.0"
12311236
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.7.0.tgz#85c9bbda00c0cb604d3c241f7bc7fb171a2d3479"
@@ -4727,15 +4732,6 @@ known-css-properties@^0.19.0:
47274732
resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.19.0.tgz#5d92b7fa16c72d971bda9b7fe295bdf61836ee5b"
47284733
integrity sha512-eYboRV94Vco725nKMlpkn3nV2+96p9c3gKXRsYqAJSswSENvBhN7n5L+uDhY58xQa0UukWsDMTGELzmD8Q+wTA==
47294734

4730-
leaked-handles@^5.2.0:
4731-
version "5.2.0"
4732-
resolved "https://registry.yarnpkg.com/leaked-handles/-/leaked-handles-5.2.0.tgz#67228e90293b7e0ee36c4190e1f541cddece627f"
4733-
integrity sha1-ZyKOkCk7fg7jbEGQ4fVBzd7OYn8=
4734-
dependencies:
4735-
process "^0.10.0"
4736-
weakmap-shim "^1.1.0"
4737-
xtend "^4.0.0"
4738-
47394735
levn@^0.4.1:
47404736
version "0.4.1"
47414737
resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
@@ -6292,11 +6288,6 @@ process-nextick-args@~2.0.0:
62926288
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
62936289
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
62946290

6295-
process@^0.10.0:
6296-
version "0.10.1"
6297-
resolved "https://registry.yarnpkg.com/process/-/process-0.10.1.tgz#842457cc51cfed72dc775afeeafb8c6034372725"
6298-
integrity sha1-hCRXzFHP7XLcd1r+6vuMYDQ3JyU=
6299-
63006291
process@^0.11.10:
63016292
version "0.11.10"
63026293
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
@@ -8301,11 +8292,6 @@ wcwidth@^1.0.1:
83018292
dependencies:
83028293
defaults "^1.0.3"
83038294

8304-
weakmap-shim@^1.1.0:
8305-
version "1.1.1"
8306-
resolved "https://registry.yarnpkg.com/weakmap-shim/-/weakmap-shim-1.1.1.tgz#d65afd784109b2166e00ff571c33150ec2a40b49"
8307-
integrity sha1-1lr9eEEJshZuAP9XHDMVDsKkC0k=
8308-
83098295
webidl-conversions@^4.0.2:
83108296
version "4.0.2"
83118297
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
@@ -8418,6 +8404,11 @@ ws@^7.2.0:
84188404
resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8"
84198405
integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==
84208406

8407+
wtfnode@^0.8.4:
8408+
version "0.8.4"
8409+
resolved "https://registry.yarnpkg.com/wtfnode/-/wtfnode-0.8.4.tgz#91ecf78a40ce222a73a063f26d72bea52357efcc"
8410+
integrity sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==
8411+
84218412
x-is-string@^0.1.0:
84228413
version "0.1.0"
84238414
resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82"

0 commit comments

Comments
 (0)