Skip to content

Commit 4fb6f97

Browse files
committed
wip
1 parent bf9a479 commit 4fb6f97

File tree

3 files changed

+30
-82
lines changed

3 files changed

+30
-82
lines changed

package-lock.json

+6-57
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

-21
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,9 @@
3838
"watch:babel": "npm run build:babel -- --watch",
3939
"watch:tsc": "npm run build:tsc -- --watch --preserveWatchOutput"
4040
},
41-
"dependencies": {
42-
"@babel/runtime": "^7.17.7",
43-
"core-js-pure": "^3.21.1"
44-
},
4541
"devDependencies": {
4642
"@babel/cli": "^7.17.6",
4743
"@babel/core": "^7.17.7",
48-
"@babel/plugin-transform-runtime": "^7.17.0",
4944
"@babel/preset-env": "^7.16.11",
5045
"@babel/preset-typescript": "^7.16.7",
5146
"@babel/register": "^7.17.7",
@@ -57,7 +52,6 @@
5752
"@typescript-eslint/eslint-plugin": "^5.15.0",
5853
"@typescript-eslint/parser": "^5.15.0",
5954
"babel-plugin-istanbul": "^6.1.1",
60-
"babel-plugin-polyfill-corejs3": "^0.5.2",
6155
"chai": "^4.3.6",
6256
"chai-as-promised": "^7.1.1",
6357
"eslint": "^8.11.0",
@@ -82,21 +76,6 @@
8276
],
8377
"@babel/preset-typescript"
8478
],
85-
"plugins": [
86-
[
87-
"@babel/plugin-transform-runtime",
88-
{
89-
"version": "7.17"
90-
}
91-
],
92-
[
93-
"babel-plugin-polyfill-corejs3",
94-
{
95-
"method": "usage-pure",
96-
"version": "3.21"
97-
}
98-
]
99-
],
10079
"env": {
10180
"cover": {
10281
"plugins": [

src/stream-to-async-iterator.test.ts

+24-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import fs from "fs";
1+
import fs, { ReadStream } from "fs";
22
import path from "path";
33
import { Readable } from "stream";
44

@@ -7,13 +7,33 @@ import { expect } from "chai";
77
import S2A from "./stream-to-async-iterator";
88

99
describe("StreamToAsyncIterator", function () {
10+
let defaultFileStreamEndEvents = 0;
11+
12+
before(() => {
13+
// I guess node 12/14 creates fs read streams with an end event
14+
const fileStream = fs.createReadStream(filePath, { encoding: "utf8" });
15+
defaultFileStreamEndEvents = fileStream.listenerCount("end");
16+
fileStream.destroy();
17+
});
18+
1019
const filePath = path.join(__dirname, "test/lorem-ipsum.txt");
1120

1221
function assertClosed(stream: Readable, iter: S2A) {
1322
expect(stream).to.have.property("destroyed", true);
14-
expect(stream.listenerCount("readable")).to.equal(0);
15-
expect(stream.listenerCount("end")).to.equal(0);
16-
expect(stream.listenerCount("error")).to.equal(0);
23+
expect(stream.listenerCount("readable")).to.equal(
24+
0,
25+
"Stream readable events was not 0"
26+
);
27+
const endEvents =
28+
stream instanceof ReadStream ? defaultFileStreamEndEvents : 0;
29+
expect(stream.listenerCount("end")).to.equal(
30+
endEvents,
31+
`Stream end events was not ${endEvents}`
32+
);
33+
expect(stream.listenerCount("error")).to.equal(
34+
0,
35+
"Stream error events was not 0"
36+
);
1737
expect(iter).to.have.property("closed", true);
1838
}
1939

0 commit comments

Comments
 (0)