From 659acadf77fdbeef8579a37839a464feb408437a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BF=B7=E6=B8=A1?= Date: Tue, 2 Apr 2019 01:05:19 +0800 Subject: [PATCH] Improve new TextDecoder().toString() (#2032) --- js/text_encoding.ts | 6 ++++++ js/text_encoding_test.ts | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/js/text_encoding.ts b/js/text_encoding.ts index 364a0f0200..a9d0d74b18 100644 --- a/js/text_encoding.ts +++ b/js/text_encoding.ts @@ -442,6 +442,9 @@ export class TextDecoder { return codePointsToString(output); } + get [Symbol.toStringTag]() { + return "TextDecoder"; + } } export class TextEncoder { @@ -467,4 +470,7 @@ export class TextEncoder { return new Uint8Array(output); } + get [Symbol.toStringTag]() { + return "TextEncoder"; + } } diff --git a/js/text_encoding_test.ts b/js/text_encoding_test.ts index 0799b1c3e4..d33537b4f2 100644 --- a/js/text_encoding_test.ts +++ b/js/text_encoding_test.ts @@ -91,3 +91,11 @@ test(function textDecoderSharedInt32Array() { const actual = decoder.decode(i32); assertEquals(actual, "ABCDEFGH"); }); + +test(function toStringShouldBeWebCompatibility() { + const encoder = new TextEncoder(); + assertEquals(encoder.toString(), "[object TextEncoder]"); + + const decoder = new TextDecoder(); + assertEquals(decoder.toString(), "[object TextDecoder]"); +});