From a1c0a1df6d3ce78812d6ed54eb3644f5573aaca3 Mon Sep 17 00:00:00 2001 From: Anne van Kesteren Date: Wed, 9 Jan 2019 19:37:45 +0100 Subject: [PATCH 1/3] Encoding: align encodeInto() test with reality While IDL said this should throw, that was in error: https://github.com/heycam/webidl/pull/605. --- encoding/encodeInto.any.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/encoding/encodeInto.any.js b/encoding/encodeInto.any.js index 2abc69744d7018..dc48e32d9e4d75 100644 --- a/encoding/encodeInto.any.js +++ b/encoding/encodeInto.any.js @@ -140,5 +140,10 @@ test(() => { assert_equals(read, 0); assert_equals(written, 0); self.postMessage(buffer, "/", [buffer]); - assert_throws(new TypeError(), () => new TextEncoder().encodeInto("", view)); -}, "encodeInto() cannot operate on a detached buffer"); + const { read2, written2 } = new TextEncoder().encodeInto("", view); + assert_equals(read2, 0); + assert_equalss(written2, 0); + const { read3, written3 } = new TextEncoder().encodeInto("test", view); + assert_equals(read3, 0); + assert_equalss(written3, 0); +}, "encodeInto() and a detached output buffer"); From 5cdb5b7e50ff7240d09f8d0bc329e103243d72b4 Mon Sep 17 00:00:00 2001 From: Anne van Kesteren Date: Thu, 10 Jan 2019 09:41:52 +0100 Subject: [PATCH 2/3] make it work in workers --- encoding/encodeInto.any.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/encoding/encodeInto.any.js b/encoding/encodeInto.any.js index dc48e32d9e4d75..9b02c2a1f77ad0 100644 --- a/encoding/encodeInto.any.js +++ b/encoding/encodeInto.any.js @@ -136,14 +136,14 @@ test(() => { test(() => { const buffer = new ArrayBuffer(10), view = new Uint8Array(buffer); - const { read, written } = new TextEncoder().encodeInto("", view); + let { read, written } = new TextEncoder().encodeInto("", view); assert_equals(read, 0); assert_equals(written, 0); - self.postMessage(buffer, "/", [buffer]); - const { read2, written2 } = new TextEncoder().encodeInto("", view); - assert_equals(read2, 0); - assert_equalss(written2, 0); - const { read3, written3 } = new TextEncoder().encodeInto("test", view); - assert_equals(read3, 0); - assert_equalss(written3, 0); + new MessageChannel().port1.postMessage(buffer, [buffer]); + ({ read, written } = new TextEncoder().encodeInto("", view)); + assert_equals(read, 0); + assert_equalss(written, 0); + ({ read, written } = new TextEncoder().encodeInto("test", view)); + assert_equals(read, 0); + assert_equalss(written, 0); }, "encodeInto() and a detached output buffer"); From e1dc869825790864d2c38ee16d969dc02e526ceb Mon Sep 17 00:00:00 2001 From: Anne van Kesteren Date: Thu, 10 Jan 2019 09:42:53 +0100 Subject: [PATCH 3/3] typos --- encoding/encodeInto.any.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/encoding/encodeInto.any.js b/encoding/encodeInto.any.js index 9b02c2a1f77ad0..fda0d1b72ce787 100644 --- a/encoding/encodeInto.any.js +++ b/encoding/encodeInto.any.js @@ -142,8 +142,8 @@ test(() => { new MessageChannel().port1.postMessage(buffer, [buffer]); ({ read, written } = new TextEncoder().encodeInto("", view)); assert_equals(read, 0); - assert_equalss(written, 0); + assert_equals(written, 0); ({ read, written } = new TextEncoder().encodeInto("test", view)); assert_equals(read, 0); - assert_equalss(written, 0); + assert_equals(written, 0); }, "encodeInto() and a detached output buffer");