diff options
author | 2023-07-11 19:35:11 +0800 | |
---|---|---|
committer | 2023-07-11 19:35:11 +0800 | |
commit | e7afae305c40acda11c090803219755c2c44d052 (patch) | |
tree | 25d56726fc7b99b057a39c9556f61e05b638e227 /test/js | |
parent | 17031936c852c2973eacf0929e762972a76ec7bf (diff) | |
parent | b2c576bba2c3274eac32cd0a70318339c3683425 (diff) | |
download | bun-e7afae305c40acda11c090803219755c2c44d052.tar.gz bun-e7afae305c40acda11c090803219755c2c44d052.tar.zst bun-e7afae305c40acda11c090803219755c2c44d052.zip |
Merge branch 'main' into fix-http
Diffstat (limited to 'test/js')
-rw-r--r-- | test/js/node/crypto/crypto.test.ts | 9 | ||||
-rw-r--r-- | test/js/node/fs/fs.test.ts | 23 |
2 files changed, 31 insertions, 1 deletions
diff --git a/test/js/node/crypto/crypto.test.ts b/test/js/node/crypto/crypto.test.ts index d8bfe5353..b1b8646f3 100644 --- a/test/js/node/crypto/crypto.test.ts +++ b/test/js/node/crypto/crypto.test.ts @@ -1,6 +1,6 @@ import { sha, MD5, MD4, SHA1, SHA224, SHA256, SHA384, SHA512, SHA512_256, gc, CryptoHasher } from "bun"; import { it, expect, describe } from "bun:test"; - +import crypto from "crypto"; const HashClasses = [MD5, MD4, SHA1, SHA224, SHA256, SHA384, SHA512, SHA512_256]; describe("CryptoHasher", () => { @@ -109,6 +109,13 @@ describe("CryptoHasher", () => { } }); +describe("crypto.getCurves", () => { + it("should return an array of strings", () => { + expect(Array.isArray(crypto.getCurves())).toBe(true); + expect(typeof crypto.getCurves()[0]).toBe("string"); + }); +}); + describe("crypto", () => { for (let Hash of HashClasses) { for (let [input, label] of [ diff --git a/test/js/node/fs/fs.test.ts b/test/js/node/fs/fs.test.ts index 3b1688c15..0236010be 100644 --- a/test/js/node/fs/fs.test.ts +++ b/test/js/node/fs/fs.test.ts @@ -1448,3 +1448,26 @@ describe("utimesSync", () => { expect(finalStats.atime).toEqual(prevAccessTime); }); }); + +it("createReadStream on a large file emits readable event correctly", () => { + return new Promise<void>((resolve, reject) => { + const tmp = mkdtempSync(`${tmpdir()}/readable`); + // write a 10mb file + writeFileSync(`${tmp}/large.txt`, "a".repeat(10 * 1024 * 1024)); + var stream = createReadStream(`${tmp}/large.txt`); + var ended = false; + var timer: Timer; + stream.on("readable", () => { + const v = stream.read(); + if (ended) { + clearTimeout(timer); + reject(new Error("readable emitted after end")); + } else if (v == null) { + ended = true; + timer = setTimeout(() => { + resolve(); + }, 20); + } + }); + }); +}); |