Browse Source

LibJS: Fix value of Temporal.PlainDate.length

Should be 3 (year, month, day, optional calendar-like), not 0.
Linus Groh 4 years ago
parent
commit
c65424d806

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Temporal/PlainDateConstructor.cpp

@@ -27,7 +27,7 @@ void PlainDateConstructor::initialize(GlobalObject& global_object)
     // 3.2.1 Temporal.PlainDate.prototype, https://tc39.es/proposal-temporal/#sec-temporal-plaindate-prototype
     define_direct_property(vm.names.prototype, global_object.temporal_plain_date_prototype(), 0);
 
-    define_direct_property(vm.names.length, Value(0), Attribute::Configurable);
+    define_direct_property(vm.names.length, Value(3), Attribute::Configurable);
 }
 
 // 3.1.1 Temporal.PlainDate ( isoYear, isoMonth, isoDay [ , calendarLike ] ), https://tc39.es/proposal-temporal/#sec-temporal.plaindate

+ 2 - 2
Userland/Libraries/LibJS/Tests/builtins/Temporal/PlainDate/PlainDate.js

@@ -40,8 +40,8 @@ describe("errors", () => {
 });
 
 describe("normal behavior", () => {
-    test("length is 0", () => {
-        expect(Temporal.PlainDate).toHaveLength(0);
+    test("length is 3", () => {
+        expect(Temporal.PlainDate).toHaveLength(3);
     });
 
     test("basic functionality", () => {