Use the ESLint no-restricted-syntax rule to ensure that assert is always called with two arguments

Having `assert` calls without a message string isn't very helpful when debugging, and it turns out that it's easy enough to make use of ESLint to enforce better `assert` call-sites.
In a couple of cases the `assert` calls were changed to "regular" throwing of errors instead, since that seemed more appropriate.

Please find additional details about the ESLint rule at https://eslint.org/docs/rules/no-restricted-syntax
This commit is contained in:
Jonas Jenwald 2020-05-05 12:40:01 +02:00
parent 491904d30a
commit e1f340a0c2
14 changed files with 73 additions and 22 deletions

View file

@ -2023,7 +2023,10 @@ class WorkerTransport {
const { messageHandler, loadingTask } = this;
messageHandler.on("GetReader", (data, sink) => {
assert(this._networkStream);
assert(
this._networkStream,
"GetReader - no `IPDFStream` instance available."
);
this._fullReader = this._networkStream.getFullReader();
this._fullReader.onProgress = evt => {
this._lastProgress = {
@ -2039,7 +2042,10 @@ class WorkerTransport {
sink.close();
return;
}
assert(isArrayBuffer(value));
assert(
isArrayBuffer(value),
"GetReader - expected an ArrayBuffer."
);
// Enqueue data chunk into sink, and transfer it
// to other side as `Transferable` object.
sink.enqueue(new Uint8Array(value), 1, [value]);
@ -2085,7 +2091,10 @@ class WorkerTransport {
});
messageHandler.on("GetRangeReader", (data, sink) => {
assert(this._networkStream);
assert(
this._networkStream,
"GetRangeReader - no `IPDFStream` instance available."
);
const rangeReader = this._networkStream.getRangeReader(
data.begin,
data.end
@ -2114,7 +2123,10 @@ class WorkerTransport {
sink.close();
return;
}
assert(isArrayBuffer(value));
assert(
isArrayBuffer(value),
"GetRangeReader - expected an ArrayBuffer."
);
sink.enqueue(new Uint8Array(value), 1, [value]);
})
.catch(reason => {