import { DEFAULT_UPLOAD_BYTES, MAX_UPLOAD_BYTES, uploadLimit } from '../../../docker/blossom/upload-policy.ts'; import { patchUploadWorker } from '../../../docker/blossom/upload-worker-patch.ts'; function assert(ok: boolean) { if (!ok) throw new Error('Assertion failed'); } function refuses(action: () => unknown) { let refused = false; try { action(); } catch { refused = true; } assert(refused); } Deno.test('general default remains 16 MiB; explicit decimal limits only up to wizard 2 GiB maximum', () => { assert(uploadLimit(undefined) === DEFAULT_UPLOAD_BYTES); for (const size of [1, DEFAULT_UPLOAD_BYTES, DEFAULT_UPLOAD_BYTES + 1, MAX_UPLOAD_BYTES]) assert(uploadLimit(String(size)) === size); }); Deno.test('malformed, empty, fractional and excessive limits fail closed', () => { for (const value of ['', '0', '-1', '+1', '01', '1.0', '2e9', 'NaN', 'Infinity', ' 16777216', '16777216 ', '2147483649', '9007199254740991']) refuses(() => uploadLimit(value)); }); Deno.test('pinned worker transform is single-use and refuses changed integration', () => { const source = Deno.readTextFileSync('/app/src/workers/upload-worker.ts'); const result = patchUploadWorker(source); assert(!result.includes('stream.tee()')); assert(result.includes('await output.write(chunk.subarray(offset))')); assert(result.includes('Upload write made no progress')); refuses(() => patchUploadWorker(result)); refuses(() => patchUploadWorker(source.replace('const [s1, s2]', 'const [first, second]'))); });