0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-10-31 09:14:20 -04:00
denoland-deno/cli/tests/unit/streams_internal_test.ts
Bartek Iwańczuk 8e914be742
build: migrate to dlint (#8176)
This commit migrates repository from using "eslint" 
to "dlint" for linting JavaScript code.
2020-11-03 16:19:29 +01:00

72 lines
1.9 KiB
TypeScript

// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
import { assertThrows, unitTest } from "./test_util.ts";
unitTest(function streamReadableHwmError() {
// deno-lint-ignore no-explicit-any
const invalidHwm: any[] = [NaN, Number("NaN"), {}, -1, "two"];
for (const highWaterMark of invalidHwm) {
assertThrows(
() => {
new ReadableStream<number>(undefined, { highWaterMark });
},
RangeError,
"highWaterMark must be a positive number or Infinity. Received:",
);
}
assertThrows(() => {
new ReadableStream<number>(
undefined,
// deno-lint-ignore no-explicit-any
{ highWaterMark: Symbol("hwk") as any },
);
}, TypeError);
});
unitTest(function streamWriteableHwmError() {
// deno-lint-ignore no-explicit-any
const invalidHwm: any[] = [NaN, Number("NaN"), {}, -1, "two"];
for (const highWaterMark of invalidHwm) {
assertThrows(
() => {
new WritableStream(
undefined,
new CountQueuingStrategy({ highWaterMark }),
);
},
RangeError,
"highWaterMark must be a positive number or Infinity. Received:",
);
}
assertThrows(() => {
new WritableStream(
undefined,
// deno-lint-ignore no-explicit-any
new CountQueuingStrategy({ highWaterMark: Symbol("hwmk") as any }),
);
}, TypeError);
});
unitTest(function streamTransformHwmError() {
// deno-lint-ignore no-explicit-any
const invalidHwm: any[] = [NaN, Number("NaN"), {}, -1, "two"];
for (const highWaterMark of invalidHwm) {
assertThrows(
() => {
new TransformStream(undefined, undefined, { highWaterMark });
},
RangeError,
"highWaterMark must be a positive number or Infinity. Received:",
);
}
assertThrows(() => {
new TransformStream(
undefined,
undefined,
// deno-lint-ignore no-explicit-any
{ highWaterMark: Symbol("hwmk") as any },
);
}, TypeError);
});