From 3ff80eb1521c49a43e0fae53840e5a636571ebfe Mon Sep 17 00:00:00 2001 From: Matt Mastracci Date: Mon, 15 Jan 2024 13:14:54 -0700 Subject: chore(ext/cache): remove CachePutResource in preparation for resource rewrite (#21949) We can use `resourceForReadableStream` to ensure that cached resources are implemented more efficiently and remove one more resource special case. --- cli/tests/unit/cache_api_test.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'cli') diff --git a/cli/tests/unit/cache_api_test.ts b/cli/tests/unit/cache_api_test.ts index d2c112f77..792929870 100644 --- a/cli/tests/unit/cache_api_test.ts +++ b/cli/tests/unit/cache_api_test.ts @@ -189,3 +189,19 @@ Deno.test(async function cachePutOverwrite() { const res_ = await cache.match(request); assertEquals(await res_?.text(), "res2"); }); + +// Ensure that we can successfully put a response backed by a resource +Deno.test(async function cachePutResource() { + const tempFile = Deno.makeTempFileSync({ prefix: "deno-", suffix: ".txt" }); + Deno.writeTextFileSync(tempFile, "Contents".repeat(1024)); + + const file = Deno.openSync(tempFile); + + const cacheName = "cache-v1"; + const cache = await caches.open(cacheName); + + const request = new Request("https://example.com/file"); + await cache.put(request, new Response(file.readable)); + const res = await cache.match(request); + assertEquals(await res?.text(), "Contents".repeat(1024)); +}); -- cgit v1.2.3