From 0f168d9ca28fbc67616a548d9a17980a14cab6b0 Mon Sep 17 00:00:00 2001 From: Kenneth Myhra Date: Fri, 23 Feb 2024 22:15:19 +0100 Subject: [PATCH] Tests/LibWeb: Add test to prove we can {,de}serialize File This test proves the ability of structuredClone() to serialize and deserialize a File object. --- .../HTML/StructuredClone-serializable-objects.txt | 5 +++++ .../input/HTML/StructuredClone-serializable-objects.html | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/Tests/LibWeb/Text/expected/HTML/StructuredClone-serializable-objects.txt b/Tests/LibWeb/Text/expected/HTML/StructuredClone-serializable-objects.txt index dcb522c922..ef45185e3d 100644 --- a/Tests/LibWeb/Text/expected/HTML/StructuredClone-serializable-objects.txt +++ b/Tests/LibWeb/Text/expected/HTML/StructuredClone-serializable-objects.txt @@ -1,3 +1,8 @@ instanceOf Blob: true Blob.type: text/plain Blob.text(): Hello, Blob! +instanceOf File: true +File.name: hello.txt +File.type: text/plain +File.text(): Hello, File! +File.size: 12 \ No newline at end of file diff --git a/Tests/LibWeb/Text/input/HTML/StructuredClone-serializable-objects.html b/Tests/LibWeb/Text/input/HTML/StructuredClone-serializable-objects.html index 85ff42365d..d0a3477262 100644 --- a/Tests/LibWeb/Text/input/HTML/StructuredClone-serializable-objects.html +++ b/Tests/LibWeb/Text/input/HTML/StructuredClone-serializable-objects.html @@ -7,6 +7,14 @@ let text = await blob.text(); println(`Blob.text(): ${text}`); + let file = structuredClone(new File(["Hello, File!"], "hello.txt", {type: "text/plain"})); + println(`instanceOf File: ${file instanceof File}`); + println(`File.name: ${file.name}`); + println(`File.type: ${file.type}`); + text = await file.text(); + println(`File.text(): ${text}`); + println(`File.size: ${file.size}`); + done(); });