mirror of
https://github.com/streetwriters/notesnook.git
synced 2025-12-16 11:47:54 +01:00
web: fix pull failed error on downloading attachments
This commit is contained in:
@@ -26,20 +26,25 @@ import { consumeReadableStream } from "../src/utils/stream";
|
||||
import { xxhash64 } from "hash-wasm";
|
||||
import path from "path";
|
||||
|
||||
const CHUNK_SIZE = 512 * 1024;
|
||||
const CHUNK_SIZE = 512 * 1024 + 17;
|
||||
test("chunked stream should create equal sized chunks", async (t) => {
|
||||
const chunks = await consumeReadableStream(
|
||||
(
|
||||
Readable.toWeb(
|
||||
createReadStream(
|
||||
path.join(__dirname, "..", "__e2e__", "data", "importer-data.zip")
|
||||
)
|
||||
createReadStream(path.join(__dirname, "data", "35a4b0a78dbb9260"))
|
||||
) as ReadableStream<Uint8Array>
|
||||
).pipeThrough(new ChunkedStream(CHUNK_SIZE))
|
||||
).pipeThrough(new ChunkedStream(CHUNK_SIZE, "copy"))
|
||||
);
|
||||
|
||||
t.expect(await Promise.all(chunks.map((a) => xxhash64(a)))).toMatchObject([
|
||||
"6234b76401d9eb97",
|
||||
"338834da3f6500b2"
|
||||
"9a3fa91d341b245d",
|
||||
"c6b5d3ec17f14a5e",
|
||||
"5163243faf462ce4",
|
||||
"63aca6b8a7f68476",
|
||||
"cd9d082fa3015bd3"
|
||||
]);
|
||||
|
||||
t.expect(
|
||||
await Promise.all(chunks.map((a) => a.byteOffset === 0))
|
||||
).toMatchObject([true, true, true, true, true]);
|
||||
});
|
||||
|
||||
BIN
apps/web/__tests__/data/35a4b0a78dbb9260
Normal file
BIN
apps/web/__tests__/data/35a4b0a78dbb9260
Normal file
Binary file not shown.
@@ -55,7 +55,11 @@ export class ChunkedStream extends TransformStream<Uint8Array, Uint8Array> {
|
||||
}
|
||||
},
|
||||
flush(controller) {
|
||||
if (backBuffer) controller.enqueue(backBuffer);
|
||||
if (backBuffer) {
|
||||
const buffer =
|
||||
mode === "copy" ? new Uint8Array(backBuffer) : backBuffer;
|
||||
controller.enqueue(buffer);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user