summaryrefslogtreecommitdiff
path: root/js/blob_test.ts
diff options
context:
space:
mode:
authorParsa Ghadimi <me@qti3e.com>2018-09-14 17:15:50 +0430
committerRyan Dahl <ry@tinyclouds.org>2018-09-14 10:04:10 -0700
commit7b7052e1abb0735ca443ffd133b014a19b7dab3d (patch)
treecee20d0143b9a0a7545b60ab329a17d1e17d9c11 /js/blob_test.ts
parentaaf70ca092fb9866bd50725f8f5b67be6f6879e3 (diff)
Implement Blob
Diffstat (limited to 'js/blob_test.ts')
-rw-r--r--js/blob_test.ts35
1 files changed, 35 insertions, 0 deletions
diff --git a/js/blob_test.ts b/js/blob_test.ts
new file mode 100644
index 000000000..293d475dd
--- /dev/null
+++ b/js/blob_test.ts
@@ -0,0 +1,35 @@
+// Copyright 2018 the Deno authors. All rights reserved. MIT license.
+import { test, assert, assertEqual } from "./test_util.ts";
+
+test(async function blobString() {
+ const b1 = new Blob(["Hello World"]);
+ const str = "Test";
+ const b2 = new Blob([b1, str]);
+ assertEqual(b2.size, b1.size + str.length);
+});
+
+test(async function blobBuffer() {
+ const buffer = new ArrayBuffer(12);
+ const u8 = new Uint8Array(buffer);
+ const f1 = new Float32Array(buffer);
+ const b1 = new Blob([buffer, u8]);
+ assertEqual(b1.size, 2 * u8.length);
+ const b2 = new Blob([b1, f1]);
+ assertEqual(b2.size, 3 * u8.length);
+});
+
+test(async function blobSlice() {
+ const blob = new Blob(["Deno", "Foo"]);
+ const b1 = blob.slice(0, 3, "Text/HTML");
+ assert(b1 instanceof Blob);
+ assertEqual(b1.size, 3);
+ assertEqual(b1.type, "text/html");
+ const b2 = blob.slice(-1, 3);
+ assertEqual(b2.size, 0);
+ const b3 = blob.slice(100, 3);
+ assertEqual(b3.size, 0);
+ const b4 = blob.slice(0, 10);
+ assertEqual(b4.size, blob.size);
+});
+
+// TODO(qti3e) Test the stored data in a Blob after implementing FileReader API.