From bc416ab80275f1c01b8b8fff0010c802e3487d9f Mon Sep 17 00:00:00 2001 From: Linus Groh Date: Sun, 1 Aug 2021 18:02:02 +0100 Subject: [PATCH] LibJS: Implement Temporal.ZonedDateTime.prototype[@@toStringTag] --- .../LibJS/Runtime/Temporal/ZonedDateTimePrototype.cpp | 5 +++++ .../ZonedDateTime/ZonedDateTime.prototype.@@toStringTag.js | 3 +++ 2 files changed, 8 insertions(+) create mode 100644 Userland/Libraries/LibJS/Tests/builtins/Temporal/ZonedDateTime/ZonedDateTime.prototype.@@toStringTag.js diff --git a/Userland/Libraries/LibJS/Runtime/Temporal/ZonedDateTimePrototype.cpp b/Userland/Libraries/LibJS/Runtime/Temporal/ZonedDateTimePrototype.cpp index daf738ef1f..b1f71335fe 100644 --- a/Userland/Libraries/LibJS/Runtime/Temporal/ZonedDateTimePrototype.cpp +++ b/Userland/Libraries/LibJS/Runtime/Temporal/ZonedDateTimePrototype.cpp @@ -18,6 +18,11 @@ ZonedDateTimePrototype::ZonedDateTimePrototype(GlobalObject& global_object) void ZonedDateTimePrototype::initialize(GlobalObject& global_object) { Object::initialize(global_object); + + auto& vm = this->vm(); + + // 6.3.2 Temporal.ZonedDateTime.prototype[ @@toStringTag ], https://tc39.es/proposal-temporal/#sec-temporal.zoneddatetime.prototype-@@tostringtag + define_direct_property(*vm.well_known_symbol_to_string_tag(), js_string(vm.heap(), "Temporal.ZonedDateTime"), Attribute::Configurable); } } diff --git a/Userland/Libraries/LibJS/Tests/builtins/Temporal/ZonedDateTime/ZonedDateTime.prototype.@@toStringTag.js b/Userland/Libraries/LibJS/Tests/builtins/Temporal/ZonedDateTime/ZonedDateTime.prototype.@@toStringTag.js new file mode 100644 index 0000000000..33ade578b8 --- /dev/null +++ b/Userland/Libraries/LibJS/Tests/builtins/Temporal/ZonedDateTime/ZonedDateTime.prototype.@@toStringTag.js @@ -0,0 +1,3 @@ +test("basic functionality", () => { + expect(Temporal.ZonedDateTime.prototype[Symbol.toStringTag]).toBe("Temporal.ZonedDateTime"); +});