From bc979c51a59b2e3b1b7ce500e502eabc897747ab Mon Sep 17 00:00:00 2001 From: Philip Chimento Date: Wed, 18 Jan 2023 18:01:05 -0800 Subject: [PATCH] Remove support for nested Temporal calendar property bags Previously, "nested" calendar property bags were unwrapped up to one level. That is, this object: { calendar: { // ...Temporal.Calendar methods } } would not be considered to implement the Calendar protocol, but would have its calendar property used instead, if it were passed to an API that required a Calendar protocol object. These nested property bags are no longer supported. Discussion: https://github.com/tc39/proposal-temporal/issues/2104#issuecomment-1409549753 Corresponding normative PR: https://github.com/tc39/proposal-temporal/pull/2485 --- harness/temporalHelpers.js | 20 +++--------- ...instance-does-not-get-calendar-property.js | 20 ------------ .../Calendar/from/calendar-object-invalid.js | 11 ------- .../from/calendar-object-operations.js | 32 ------------------- .../Temporal/Calendar/from/calendar-object.js | 12 +------ .../from/calendar-string-leap-second.js | 14 ++------ .../Calendar/from/calendar-wrong-type.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/dateAdd/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 8 +---- ...instance-does-not-get-calendar-property.js | 22 ------------- ...gument-propertybag-calendar-leap-second.js | 8 +---- .../argument-propertybag-calendar-number.js | 21 ++---------- ...rgument-propertybag-calendar-wrong-type.js | 16 ++-------- .../dateUntil/order-of-operations.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../Duration/compare/order-of-operations.js | 2 -- .../prototype/add/order-of-operations.js | 2 -- .../relativeto-propertybag-calendar-number.js | 18 +++-------- ...ativeto-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/round/order-of-operations.js | 2 -- .../relativeto-propertybag-calendar-number.js | 18 +++-------- ...ativeto-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/subtract/order-of-operations.js | 2 -- .../relativeto-propertybag-calendar-number.js | 18 +++-------- ...ativeto-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/total/order-of-operations.js | 2 -- .../relativeto-propertybag-calendar-number.js | 18 +++-------- ...ativeto-propertybag-calendar-wrong-type.js | 13 ++------ ...instance-does-not-get-calendar-property.js | 22 ------------- .../calendar-string-leap-second.js | 14 ++------ .../toZonedDateTime/calendar-wrong-type.js | 2 -- ...instance-does-not-get-calendar-property.js | 20 ------------ .../plainDate/calendar-string-leap-second.js | 14 ++------ .../Now/plainDate/calendar-wrong-type.js | 2 -- ...instance-does-not-get-calendar-property.js | 20 ------------ .../calendar-object-fail-call-tostring.js | 20 ------------ .../calendar-object-fail-get-calendar.js | 17 ---------- .../calendar-object-fail-has-calendar.js | 20 ------------ ...alendar-object-fail-has-nested-calendar.js | 21 ------------ .../Now/plainDateTime/calendar-object.js | 27 ++-------------- .../calendar-string-leap-second.js | 14 ++------ .../Now/plainDateTime/calendar-wrong-type.js | 2 -- ...instance-does-not-get-calendar-property.js | 20 ------------ .../calendar-object-fail-call-tostring.js | 20 ------------ .../calendar-object-fail-get-calendar.js | 17 ---------- .../calendar-object-fail-has-calendar.js | 20 ------------ ...alendar-object-fail-has-nested-calendar.js | 21 ------------ .../Now/zonedDateTime/calendar-object.js | 27 ++-------------- .../calendar-string-leap-second.js | 14 ++------ .../Now/zonedDateTime/calendar-wrong-type.js | 2 -- ...instance-does-not-get-calendar-property.js | 20 ------------ ...t-propertybag-calendar-case-insensitive.js | 8 +---- ...instance-does-not-get-calendar-property.js | 20 ------------ ...gument-propertybag-calendar-leap-second.js | 8 +---- .../argument-propertybag-calendar-number.js | 21 ++---------- ...rgument-propertybag-calendar-wrong-type.js | 16 ++-------- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 23 ------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../PlainDate/from/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/since/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/until/order-of-operations.js | 1 - ...instance-does-not-get-calendar-property.js | 22 ------------- .../calendar-string-leap-second.js | 14 ++------ .../withCalendar/calendar-wrong-type.js | 2 -- ...instance-does-not-get-calendar-property.js | 20 ------------ ...t-propertybag-calendar-case-insensitive.js | 8 +---- ...instance-does-not-get-calendar-property.js | 20 ------------ ...gument-propertybag-calendar-leap-second.js | 9 +----- .../argument-propertybag-calendar-number.js | 21 ++---------- ...rgument-propertybag-calendar-wrong-type.js | 16 ++-------- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 23 ------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../PlainDateTime/from/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/since/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/until/order-of-operations.js | 1 - ...instance-does-not-get-calendar-property.js | 22 ------------- .../calendar-string-leap-second.js | 14 ++------ .../withCalendar/calendar-wrong-type.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...instance-does-not-get-calendar-property.js | 20 ------------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 23 ------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../PlainMonthDay/from/order-of-operations.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...instance-does-not-get-calendar-property.js | 20 ------------ ...t-propertybag-calendar-case-insensitive.js | 8 +---- ...instance-does-not-get-calendar-property.js | 20 ------------ ...gument-propertybag-calendar-leap-second.js | 24 ++++++++++++++ .../argument-propertybag-calendar-number.js | 21 ++---------- ...rgument-propertybag-calendar-wrong-type.js | 16 ++-------- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 23 ------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../from/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/since/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/until/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../getInstantFor/order-of-operations.js | 1 - ...instance-does-not-get-calendar-property.js | 22 ------------- .../calendar-string-leap-second.js | 14 ++------ .../calendar-wrong-type.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...instance-does-not-get-calendar-property.js | 20 ------------ ...t-propertybag-calendar-case-insensitive.js | 8 +---- ...instance-does-not-get-calendar-property.js | 21 ------------ ...gument-propertybag-calendar-leap-second.js | 8 +---- .../argument-propertybag-calendar-number.js | 21 ++---------- ...rgument-propertybag-calendar-wrong-type.js | 16 ++-------- .../compare/order-of-operations.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 24 -------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../ZonedDateTime/from/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 26 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/equals/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 26 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/since/order-of-operations.js | 1 - ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 26 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ .../prototype/until/order-of-operations.js | 1 - ...instance-does-not-get-calendar-property.js | 22 ------------- .../calendar-string-leap-second.js | 14 ++------ .../withCalendar/calendar-wrong-type.js | 2 -- ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 26 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ ...t-propertybag-calendar-case-insensitive.js | 10 ++---- ...instance-does-not-get-calendar-property.js | 25 --------------- ...gument-propertybag-calendar-leap-second.js | 14 ++------ .../argument-propertybag-calendar-number.js | 18 +++-------- ...rgument-propertybag-calendar-wrong-type.js | 13 ++------ 302 files changed, 593 insertions(+), 3861 deletions(-) delete mode 100644 test/built-ins/Temporal/Calendar/from/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/from/calendar-object-invalid.js delete mode 100644 test/built-ins/Temporal/Calendar/from/calendar-object-operations.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Now/plainDate/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Now/plainDateTime/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-call-tostring.js delete mode 100644 test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-get-calendar.js delete mode 100644 test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-calendar.js delete mode 100644 test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-nested-calendar.js delete mode 100644 test/built-ins/Temporal/Now/zonedDateTime/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-call-tostring.js delete mode 100644 test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-get-calendar.js delete mode 100644 test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-calendar.js delete mode 100644 test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-nested-calendar.js delete mode 100644 test/built-ins/Temporal/PlainDate/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainMonthDay/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js create mode 100644 test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-leap-second.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-instance-does-not-get-calendar-property.js delete mode 100644 test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js diff --git a/harness/temporalHelpers.js b/harness/temporalHelpers.js index 0a203f1d7d..769fa3a9d1 100644 --- a/harness/temporalHelpers.js +++ b/harness/temporalHelpers.js @@ -1475,10 +1475,7 @@ var TemporalHelpers = { const originalResult = iso8601.dateFromFields(...args); // Replace the calendar in the result with the call-tracking calendar const {isoYear, isoMonth, isoDay} = originalResult.getISOFields(); - const result = new Temporal.PlainDate(isoYear, isoMonth, isoDay, this); - // Remove the HasProperty check resulting from the above constructor call - assert.sameValue(calls.pop(), `has ${objectName}.calendar`); - return result; + return new Temporal.PlainDate(isoYear, isoMonth, isoDay, this); }, yearMonthFromFields(...args) { calls.push(`call ${objectName}.yearMonthFromFields`); @@ -1489,10 +1486,7 @@ var TemporalHelpers = { const originalResult = iso8601.yearMonthFromFields(...args); // Replace the calendar in the result with the call-tracking calendar const {isoYear, isoMonth, isoDay} = originalResult.getISOFields(); - const result = new Temporal.PlainYearMonth(isoYear, isoMonth, this, isoDay); - // Remove the HasProperty check resulting from the above constructor call - assert.sameValue(calls.pop(), `has ${objectName}.calendar`); - return result; + return new Temporal.PlainYearMonth(isoYear, isoMonth, this, isoDay); }, monthDayFromFields(...args) { calls.push(`call ${objectName}.monthDayFromFields`); @@ -1503,10 +1497,7 @@ var TemporalHelpers = { const originalResult = iso8601.monthDayFromFields(...args); // Replace the calendar in the result with the call-tracking calendar const {isoYear, isoMonth, isoDay} = originalResult.getISOFields(); - const result = new Temporal.PlainMonthDay(isoMonth, isoDay, this, isoYear); - // Remove the HasProperty check resulting from the above constructor call - assert.sameValue(calls.pop(), `has ${objectName}.calendar`); - return result; + return new Temporal.PlainMonthDay(isoMonth, isoDay, this, isoYear); }, dateAdd(...args) { calls.push(`call ${objectName}.dateAdd`); @@ -1516,10 +1507,7 @@ var TemporalHelpers = { } const originalResult = iso8601.dateAdd(...args); const {isoYear, isoMonth, isoDay} = originalResult.getISOFields(); - const result = new Temporal.PlainDate(isoYear, isoMonth, isoDay, this); - // Remove the HasProperty check resulting from the above constructor call - assert.sameValue(calls.pop(), `has ${objectName}.calendar`); - return result; + return new Temporal.PlainDate(isoYear, isoMonth, isoDay, this); }, id: "iso8601", }; diff --git a/test/built-ins/Temporal/Calendar/from/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/from/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 2559b77724..0000000000 --- a/test/built-ins/Temporal/Calendar/from/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.from -description: > - A Temporal.Calendar instance passed to from() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -Temporal.Calendar.from(arg); -Temporal.Calendar.from({ calendar: arg }); diff --git a/test/built-ins/Temporal/Calendar/from/calendar-object-invalid.js b/test/built-ins/Temporal/Calendar/from/calendar-object-invalid.js deleted file mode 100644 index fe70acdc98..0000000000 --- a/test/built-ins/Temporal/Calendar/from/calendar-object-invalid.js +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright (C) 2021 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.from -description: Converting objects to Temporal.Calendar -features: [Temporal] ----*/ - -assert.throws(RangeError, () => Temporal.Calendar.from({ calendar: "local" })); -assert.throws(RangeError, () => Temporal.Calendar.from({ calendar: { calendar: "iso8601" } })); diff --git a/test/built-ins/Temporal/Calendar/from/calendar-object-operations.js b/test/built-ins/Temporal/Calendar/from/calendar-object-operations.js deleted file mode 100644 index 00033b768e..0000000000 --- a/test/built-ins/Temporal/Calendar/from/calendar-object-operations.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (C) 2021 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.from -description: Converting objects to Temporal.Calendar -includes: [compareArray.js, temporalHelpers.js] -features: [Temporal] ----*/ - -const expected = [ - "has outer.calendar", - "get outer.calendar", - "has inner.calendar", - "get inner.toString", - "call inner.toString", -]; -const actual = []; -const calendar = TemporalHelpers.propertyBagObserver(actual, { - calendar: new Proxy(TemporalHelpers.toPrimitiveObserver(actual, "iso8601", "inner"), { - has(t, p) { - actual.push(`has inner.${p}`); - return true; - }, - get(t, p) { - return t[p]; - }, - }), -}, "outer"); -const result = Temporal.Calendar.from(calendar); -assert.sameValue(result.id, "iso8601"); -assert.compareArray(actual, expected); diff --git a/test/built-ins/Temporal/Calendar/from/calendar-object.js b/test/built-ins/Temporal/Calendar/from/calendar-object.js index cb680a26d8..6a75794694 100644 --- a/test/built-ins/Temporal/Calendar/from/calendar-object.js +++ b/test/built-ins/Temporal/Calendar/from/calendar-object.js @@ -3,19 +3,9 @@ /*--- esid: sec-temporal.calendar.from -description: Converting objects to Temporal.Calendar +description: Converting a plain object to Temporal.Calendar gives the same object features: [Temporal] ---*/ -const cal = new Temporal.Calendar("iso8601"); -const calFromObject = Temporal.Calendar.from({ calendar: cal }); -assert(calFromObject instanceof Temporal.Calendar); -assert.sameValue(calFromObject.id, "iso8601"); - -const calFromString = Temporal.Calendar.from({ calendar: "iso8601" }); -assert(calFromString instanceof Temporal.Calendar); -assert.sameValue(calFromString.id, "iso8601"); - const custom = { id: "custom-calendar" }; -assert.sameValue(Temporal.Calendar.from({ calendar: custom }), custom); assert.sameValue(Temporal.Calendar.from(custom), custom); diff --git a/test/built-ins/Temporal/Calendar/from/calendar-string-leap-second.js b/test/built-ins/Temporal/Calendar/from/calendar-string-leap-second.js index 88ec4b5ac8..4164b0c8ab 100644 --- a/test/built-ins/Temporal/Calendar/from/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/Calendar/from/calendar-string-leap-second.js @@ -7,18 +7,10 @@ description: Leap second is a valid ISO string for Calendar features: [Temporal] ---*/ -let arg = "2016-12-31T23:59:60"; -const result1 = Temporal.Calendar.from(arg); +const arg = "2016-12-31T23:59:60"; +const result = Temporal.Calendar.from(arg); assert.sameValue( - result1.id, + result.id, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = Temporal.Calendar.from(arg); -assert.sameValue( - result2.id, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/from/calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/from/calendar-wrong-type.js index e97e4d905d..7872409cd7 100644 --- a/test/built-ins/Temporal/Calendar/from/calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/from/calendar-wrong-type.js @@ -20,7 +20,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => Temporal.Calendar.from(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => Temporal.Calendar.from({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -29,5 +28,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => Temporal.Calendar.from(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => Temporal.Calendar.from({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-case-insensitive.js index 57c535a19d..4f84deeef4 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dateAdd(arg, new Temporal.Duration()); -TemporalHelpers.assertPlainDate(result1, 1976, 11, "M11", 18, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dateAdd(arg, new Temporal.Duration()); -TemporalHelpers.assertPlainDate(result2, 1976, 11, "M11", 18, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dateAdd(arg, new Temporal.Duration()); +TemporalHelpers.assertPlainDate(result, 1976, 11, "M11", 18, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 83226348d6..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.dateadd -description: > - A Temporal.Calendar instance passed to dateAdd() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.dateAdd(arg, new Temporal.Duration()); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.dateAdd(arg, new Temporal.Duration()); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-leap-second.js index e310aaeac9..1813e3082f 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dateAdd(arg, new Temporal.Duration()); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dateAdd(arg, new Temporal.Duration()); TemporalHelpers.assertPlainDate( - result1, + result, 1976, 11, "M11", 18, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dateAdd(arg, new Temporal.Duration()); -TemporalHelpers.assertPlainDate( - result2, - 1976, 11, "M11", 18, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-number.js index 4d585142dc..ca13276933 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dateAdd(arg, new Temporal.Duration()); -TemporalHelpers.assertPlainDate(result1, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dateAdd(arg, new Temporal.Duration()); -TemporalHelpers.assertPlainDate(result2, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dateAdd(arg, new Temporal.Duration()); +TemporalHelpers.assertPlainDate(result, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.dateAdd(arg, new Temporal.Duration()), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.dateAdd(arg, new Temporal.Duration()), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-wrong-type.js index a868f5578c..9caa340f55 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateAdd/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.dateAdd(arg, new Temporal.Duration()), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.dateAdd(arg, new Temporal.Duration()), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.dateAdd(arg, new Temporal.Duration()), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.dateAdd(arg, new Temporal.Duration()), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.dateAdd(arg, new Temporal.Duration()), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateAdd/order-of-operations.js b/test/built-ins/Temporal/Calendar/prototype/dateAdd/order-of-operations.js index fccca03bef..251d8b2b4a 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateAdd/order-of-operations.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateAdd/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDate → GetTemporalCalendarWithISODefault "get date.calendar", - "has date.calendar.calendar", // ToTemporalDate → CalendarFields "get date.calendar.fields", "call date.calendar.fields", diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-case-insensitive.js index 214d04f702..0055d3b8bf 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-case-insensitive.js @@ -12,14 +12,8 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); TemporalHelpers.assertDuration(result1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (first argument)"); const result2 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); TemporalHelpers.assertDuration(result2, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); -TemporalHelpers.assertDuration(result3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property, first argument)"); -const result4 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); -TemporalHelpers.assertDuration(result4, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property, second argument)"); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 645c5583d4..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.dateuntil -description: > - A Temporal.Calendar instance passed to dateUntil() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.dateUntil(arg, arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-leap-second.js index ba6e4372f1..daf2fe1e66 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-leap-second.js @@ -12,14 +12,8 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); TemporalHelpers.assertDuration(result1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar (first argument)"); const result2 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); TemporalHelpers.assertDuration(result2, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); -TemporalHelpers.assertDuration(result3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar (nested property, first argument)"); -const result4 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); -TemporalHelpers.assertDuration(result4, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar (nested property, second argument)"); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-number.js index a9fd223616..9efada773e 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-number.js @@ -12,18 +12,12 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); TemporalHelpers.assertDuration(result1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (first argument)"); const result2 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); TemporalHelpers.assertDuration(result2, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (second argument)"); -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = instance.dateUntil(arg, new Temporal.PlainDate(1976, 11, 19)); -TemporalHelpers.assertDuration(result3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); -const result4 = instance.dateUntil(new Temporal.PlainDate(1976, 11, 19), arg); -TemporalHelpers.assertDuration(result4, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property, second argument)"); - const numbers = [ 1, -19970327, @@ -31,7 +25,7 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), @@ -42,15 +36,4 @@ for (const calendar of numbers) { () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `Number ${calendar} does not convert to a valid ISO string for calendar (second argument)` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, first argument)` - ); - assert.throws( - RangeError, - () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, second argument)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-wrong-type.js index 5a974bbb17..4dc24ee7a3 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateUntil/argument-propertybag-calendar-wrong-type.js @@ -22,13 +22,9 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), `${description} does not convert to a valid ISO string (first argument)`); assert.throws(RangeError, () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `${description} does not convert to a valid ISO string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), `${description} does not convert to a valid ISO string (nested property, first argument)`); - assert.throws(RangeError, () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `${description} does not convert to a valid ISO string (nested property, second argument)`); } const typeErrorTests = [ @@ -39,15 +35,7 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), `${description} is not a valid property bag and does not convert to a string (first argument)`); assert.throws(TypeError, () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `${description} is not a valid property bag and does not convert to a string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), `${description} is not a valid property bag and does not convert to a string (nested property, first argument)`); - assert.throws(TypeError, () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `${description} is not a valid property bag and does not convert to a string (nested property, second argument)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.dateUntil(arg, new Temporal.PlainDate(1977, 11, 19)), `nested undefined calendar property is always a RangeError (first argument)`); -assert.throws(RangeError, () => instance.dateUntil(new Temporal.PlainDate(1977, 11, 19), arg), `nested undefined calendar property is always a RangeError (second argument)`); diff --git a/test/built-ins/Temporal/Calendar/prototype/dateUntil/order-of-operations.js b/test/built-ins/Temporal/Calendar/prototype/dateUntil/order-of-operations.js index b15bf8bc36..4c1d8ec6fa 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dateUntil/order-of-operations.js +++ b/test/built-ins/Temporal/Calendar/prototype/dateUntil/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDate 1 → GetTemporalCalendarWithISODefault "get one.calendar", - "has one.calendar.calendar", // ToTemporalDate 1 → CalendarFields "get one.calendar.fields", "call one.calendar.fields", @@ -33,7 +32,6 @@ const expected = [ "call one.calendar.dateFromFields", // ToTemporalDate 2 → GetTemporalCalendarWithISODefault "get two.calendar", - "has two.calendar.calendar", // ToTemporalDate 2 → CalendarFields "get two.calendar.fields", "call two.calendar.fields", diff --git a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-case-insensitive.js index 4719772acd..dffee306c0 100644 --- a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.day(arg); -assert.sameValue(result1, 18, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.day(arg); -assert.sameValue(result2, 18, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.day(arg); +assert.sameValue(result, 18, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 3712975ec3..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.day -description: > - A Temporal.Calendar instance passed to day() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.day(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.day(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-leap-second.js index 2bf759b8a5..f147e6cf62 100644 --- a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.day(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.day(arg); assert.sameValue( - result1, + result, 18, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.day(arg); -assert.sameValue( - result2, - 18, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-number.js index 403ca7f06d..d269d715b7 100644 --- a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.day(arg); -assert.sameValue(result1, 18, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.day(arg); -assert.sameValue(result2, 18, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.day(arg); +assert.sameValue(result, 18, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.day(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.day(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-wrong-type.js index 57c21e0ad9..1baae3e298 100644 --- a/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/day/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.day(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.day(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.day(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.day(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.day(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-case-insensitive.js index 67139a93c1..1b285a463e 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfWeek(arg); -assert.sameValue(result1, 4, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfWeek(arg); -assert.sameValue(result2, 4, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfWeek(arg); +assert.sameValue(result, 4, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index b9aad23a72..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.dayofweek -description: > - A Temporal.Calendar instance passed to dayOfWeek() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.dayOfWeek(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.dayOfWeek(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-leap-second.js index fcd0ca2d74..616fcd0118 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfWeek(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfWeek(arg); assert.sameValue( - result1, + result, 4, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfWeek(arg); -assert.sameValue( - result2, - 4, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-number.js index bc4d21ea1c..2f63aaac8e 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfWeek(arg); -assert.sameValue(result1, 4, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfWeek(arg); -assert.sameValue(result2, 4, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfWeek(arg); +assert.sameValue(result, 4, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.dayOfWeek(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.dayOfWeek(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-wrong-type.js index 03f9f14344..1c944627a9 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfWeek/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.dayOfWeek(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.dayOfWeek(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.dayOfWeek(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.dayOfWeek(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.dayOfWeek(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-case-insensitive.js index 160354ee72..d1d195f954 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfYear(arg); -assert.sameValue(result1, 323, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfYear(arg); -assert.sameValue(result2, 323, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfYear(arg); +assert.sameValue(result, 323, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 162a3217a7..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.dayofyear -description: > - A Temporal.Calendar instance passed to dayOfYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.dayOfYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.dayOfYear(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-leap-second.js index d51b2c0dcb..ca8263b8e1 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfYear(arg); assert.sameValue( - result1, + result, 323, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfYear(arg); -assert.sameValue( - result2, - 323, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-number.js index f0447e0c1c..0e1536d43b 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.dayOfYear(arg); -assert.sameValue(result1, 323, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.dayOfYear(arg); -assert.sameValue(result2, 323, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.dayOfYear(arg); +assert.sameValue(result, 323, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.dayOfYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.dayOfYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-wrong-type.js index f7ecf1684e..382e9fcb02 100644 --- a/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/dayOfYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.dayOfYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.dayOfYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.dayOfYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.dayOfYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.dayOfYear(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-case-insensitive.js index c1b9ca391c..ca24cf52ad 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInMonth(arg); -assert.sameValue(result1, 30, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInMonth(arg); -assert.sameValue(result2, 30, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInMonth(arg); +assert.sameValue(result, 30, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index c9a95836f3..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.daysinmonth -description: > - A Temporal.Calendar instance passed to daysInMonth() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.daysInMonth(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.daysInMonth(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-leap-second.js index 763ae9c73d..40ce56d528 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInMonth(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInMonth(arg); assert.sameValue( - result1, + result, 30, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInMonth(arg); -assert.sameValue( - result2, - 30, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-number.js index 2987dc0b11..1f22a0391b 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInMonth(arg); -assert.sameValue(result1, 30, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInMonth(arg); -assert.sameValue(result2, 30, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInMonth(arg); +assert.sameValue(result, 30, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.daysInMonth(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.daysInMonth(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-wrong-type.js index 9876bb18a9..fd65933dbe 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInMonth/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.daysInMonth(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.daysInMonth(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.daysInMonth(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.daysInMonth(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.daysInMonth(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-case-insensitive.js index 2123e069bd..6616112eb0 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInWeek(arg); -assert.sameValue(result1, 7, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInWeek(arg); -assert.sameValue(result2, 7, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInWeek(arg); +assert.sameValue(result, 7, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 571b1e1c11..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.daysinweek -description: > - A Temporal.Calendar instance passed to daysInWeek() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.daysInWeek(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.daysInWeek(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-leap-second.js index 4d6d407a78..ff74cf1de1 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInWeek(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInWeek(arg); assert.sameValue( - result1, + result, 7, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInWeek(arg); -assert.sameValue( - result2, - 7, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-number.js index 473cd6a433..59d1722bae 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInWeek(arg); -assert.sameValue(result1, 7, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInWeek(arg); -assert.sameValue(result2, 7, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInWeek(arg); +assert.sameValue(result, 7, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.daysInWeek(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.daysInWeek(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-wrong-type.js index a0179adc03..2906c14d96 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInWeek/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.daysInWeek(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.daysInWeek(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.daysInWeek(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.daysInWeek(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.daysInWeek(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-case-insensitive.js index c2faf61258..401ba888a9 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInYear(arg); -assert.sameValue(result1, 366, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInYear(arg); -assert.sameValue(result2, 366, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInYear(arg); +assert.sameValue(result, 366, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 0fb3a77a0e..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.daysinyear -description: > - A Temporal.Calendar instance passed to daysInYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.daysInYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.daysInYear(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-leap-second.js index 027cf9da24..32595247a4 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInYear(arg); assert.sameValue( - result1, + result, 366, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInYear(arg); -assert.sameValue( - result2, - 366, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-number.js index de1bdcfccd..51148e0501 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.daysInYear(arg); -assert.sameValue(result1, 366, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.daysInYear(arg); -assert.sameValue(result2, 366, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.daysInYear(arg); +assert.sameValue(result, 366, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.daysInYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.daysInYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-wrong-type.js index 97283c0b3f..4d97f3a344 100644 --- a/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/daysInYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.daysInYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.daysInYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.daysInYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.daysInYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.daysInYear(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-case-insensitive.js index b0a6ad3f6c..1214c1b8be 100644 --- a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.inLeapYear(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.inLeapYear(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.inLeapYear(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 676eb91e70..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.inleapyear -description: > - A Temporal.Calendar instance passed to inLeapYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.inLeapYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.inLeapYear(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-leap-second.js index a776948093..d7a4e62013 100644 --- a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.inLeapYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.inLeapYear(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.inLeapYear(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-number.js index f3ba12a322..22e411c99a 100644 --- a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.inLeapYear(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.inLeapYear(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.inLeapYear(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.inLeapYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.inLeapYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-wrong-type.js index 7993e2e1bf..e54562774d 100644 --- a/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/inLeapYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.inLeapYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.inLeapYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.inLeapYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.inLeapYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.inLeapYear(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-case-insensitive.js index d45fc71c9e..491085743c 100644 --- a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.month(arg); -assert.sameValue(result1, 11, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.month(arg); -assert.sameValue(result2, 11, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.month(arg); +assert.sameValue(result, 11, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 962f839a02..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.month -description: > - A Temporal.Calendar instance passed to month() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.month(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.month(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-leap-second.js index 313b31f512..018fdf3210 100644 --- a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.month(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.month(arg); assert.sameValue( - result1, + result, 11, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.month(arg); -assert.sameValue( - result2, - 11, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-number.js index 1d8351bc8d..fbb6657560 100644 --- a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.month(arg); -assert.sameValue(result1, 11, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.month(arg); -assert.sameValue(result2, 11, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.month(arg); +assert.sameValue(result, 11, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.month(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.month(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-wrong-type.js index 1d5ac9c40f..fffbdfe7d5 100644 --- a/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/month/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.month(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.month(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.month(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.month(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.month(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-case-insensitive.js index 2df095d874..2692a8bd3d 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthCode(arg); -assert.sameValue(result1, "M11", "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthCode(arg); -assert.sameValue(result2, "M11", "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthCode(arg); +assert.sameValue(result, "M11", "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index f9c56b489e..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.monthcode -description: > - A Temporal.Calendar instance passed to monthCode() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.monthCode(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.monthCode(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-leap-second.js index 7c8eb3e6cf..8f840d1829 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthCode(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthCode(arg); assert.sameValue( - result1, + result, "M11", "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthCode(arg); -assert.sameValue( - result2, - "M11", - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-number.js index d7ac6bebdc..2d44db82f7 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthCode(arg); -assert.sameValue(result1, "M11", "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthCode(arg); -assert.sameValue(result2, "M11", "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthCode(arg); +assert.sameValue(result, "M11", "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.monthCode(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.monthCode(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-wrong-type.js index ffdeeb4269..cfc0a004e2 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthCode/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.monthCode(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.monthCode(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.monthCode(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.monthCode(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.monthCode(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-case-insensitive.js index a4df5461ca..27a09872aa 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthsInYear(arg); -assert.sameValue(result1, 12, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthsInYear(arg); -assert.sameValue(result2, 12, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthsInYear(arg); +assert.sameValue(result, 12, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index f3e7407628..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.monthsinyear -description: > - A Temporal.Calendar instance passed to monthsInYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.monthsInYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.monthsInYear(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-leap-second.js index 001b3cde21..f03a83024a 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthsInYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthsInYear(arg); assert.sameValue( - result1, + result, 12, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthsInYear(arg); -assert.sameValue( - result2, - 12, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-number.js index b2ce9cd8d5..8790243fbe 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.monthsInYear(arg); -assert.sameValue(result1, 12, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.monthsInYear(arg); -assert.sameValue(result2, 12, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.monthsInYear(arg); +assert.sameValue(result, 12, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.monthsInYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.monthsInYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-wrong-type.js index 00d73115d2..d35ea5b308 100644 --- a/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/monthsInYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.monthsInYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.monthsInYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.monthsInYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.monthsInYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.monthsInYear(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-case-insensitive.js index cab959c670..7458eed38f 100644 --- a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.weekOfYear(arg); -assert.sameValue(result1, 47, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.weekOfYear(arg); -assert.sameValue(result2, 47, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.weekOfYear(arg); +assert.sameValue(result, 47, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index db74808764..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.weekofyear -description: > - A Temporal.Calendar instance passed to weekOfYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.weekOfYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.weekOfYear(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-leap-second.js index ba100b2b8c..330cdb114a 100644 --- a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.weekOfYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.weekOfYear(arg); assert.sameValue( - result1, + result, 47, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.weekOfYear(arg); -assert.sameValue( - result2, - 47, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-number.js index cd5069188c..73f81f7c8d 100644 --- a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.weekOfYear(arg); -assert.sameValue(result1, 47, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.weekOfYear(arg); -assert.sameValue(result2, 47, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.weekOfYear(arg); +assert.sameValue(result, 47, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.weekOfYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.weekOfYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-wrong-type.js index 7dbc131937..fa47542e17 100644 --- a/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/weekOfYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.weekOfYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.weekOfYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.weekOfYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.weekOfYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.weekOfYear(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-case-insensitive.js index c9499e0af0..a5b6f52676 100644 --- a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.year(arg); -assert.sameValue(result1, 1976, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.year(arg); -assert.sameValue(result2, 1976, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.year(arg); +assert.sameValue(result, 1976, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 7e6f585cf9..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.year -description: > - A Temporal.Calendar instance passed to year() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.year(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.year(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-leap-second.js index d821211c53..8f8d5ef586 100644 --- a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.year(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.year(arg); assert.sameValue( - result1, + result, 1976, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.year(arg); -assert.sameValue( - result2, - 1976, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-number.js index 3030c5ed26..bc475da624 100644 --- a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.year(arg); -assert.sameValue(result1, 1976, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.year(arg); -assert.sameValue(result2, 1976, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.year(arg); +assert.sameValue(result, 1976, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.year(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.year(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-wrong-type.js index b3cec2bd4d..47a4c42a18 100644 --- a/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/year/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.year(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.year(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.year(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.year(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.year(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-case-insensitive.js index c3c513e500..1cd2b10757 100644 --- a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.yearOfWeek(arg); -assert.sameValue(result1, 1976, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.yearOfWeek(arg); -assert.sameValue(result2, 1976, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.yearOfWeek(arg); +assert.sameValue(result, 1976, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 24d661a6ba..0000000000 --- a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.yearofweek -description: > - A Temporal.Calendar instance passed to yearOfWeek() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.yearOfWeek(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.yearOfWeek(arg); diff --git a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-leap-second.js index 50d93686ee..5a2044e8f9 100644 --- a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.yearOfWeek(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.yearOfWeek(arg); assert.sameValue( - result1, + result, 1976, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.yearOfWeek(arg); -assert.sameValue( - result2, - 1976, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-number.js index f15d75d4c8..885f48f120 100644 --- a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.yearOfWeek(arg); -assert.sameValue(result1, 1976, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.yearOfWeek(arg); -assert.sameValue(result2, 1976, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.yearOfWeek(arg); +assert.sameValue(result, 1976, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.yearOfWeek(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.yearOfWeek(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-wrong-type.js index e7094a99d7..96d68de0ca 100644 --- a/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Calendar/prototype/yearOfWeek/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.yearOfWeek(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.yearOfWeek(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.yearOfWeek(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.yearOfWeek(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.yearOfWeek(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Duration/compare/order-of-operations.js b/test/built-ins/Temporal/Duration/compare/order-of-operations.js index 8c2947f78d..4af2518bbd 100644 --- a/test/built-ins/Temporal/Duration/compare/order-of-operations.js +++ b/test/built-ins/Temporal/Duration/compare/order-of-operations.js @@ -88,7 +88,6 @@ actual.splice(0); // clear const expectedOpsForPlainRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", @@ -154,7 +153,6 @@ actual.splice(0); // clear const expectedOpsForZonedRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", diff --git a/test/built-ins/Temporal/Duration/prototype/add/order-of-operations.js b/test/built-ins/Temporal/Duration/prototype/add/order-of-operations.js index b66705c0a7..a872a36cac 100644 --- a/test/built-ins/Temporal/Duration/prototype/add/order-of-operations.js +++ b/test/built-ins/Temporal/Duration/prototype/add/order-of-operations.js @@ -71,7 +71,6 @@ actual.splice(0); // clear const expectedOpsForPlainRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", // PrepareTemporalFields @@ -136,7 +135,6 @@ actual.splice(0); // clear const expectedOpsForZonedRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", // PrepareTemporalFields diff --git a/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-number.js b/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-number.js index b2ff180cb5..73641f977d 100644 --- a/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.Duration(1, 0, 0, 1); const calendar = 19970327; -let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; -const result1 = instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }); -TemporalHelpers.assertDuration(result1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); - -relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; -const result2 = instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }); -TemporalHelpers.assertDuration(result2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar (nested property)"); +const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; +const result = instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }); +TemporalHelpers.assertDuration(result, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws( RangeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar` ); - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), - `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-wrong-type.js index 733eee13df..17f4005e08 100644 --- a/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Duration/prototype/add/relativeto-propertybag-calendar-wrong-type.js @@ -22,11 +22,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `${description} does not convert to a valid ISO string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -39,12 +36,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `${description} is not a valid property bag and does not convert to a string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.add(new Temporal.Duration(0, 0, 0, 0, -24), { relativeTo }), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Duration/prototype/round/order-of-operations.js b/test/built-ins/Temporal/Duration/prototype/round/order-of-operations.js index 9799b3a0ad..7f427c372a 100644 --- a/test/built-ins/Temporal/Duration/prototype/round/order-of-operations.js +++ b/test/built-ins/Temporal/Duration/prototype/round/order-of-operations.js @@ -48,7 +48,6 @@ const expectedOpsForPlainRelativeTo = [ "call options.largestUnit.toString", "get options.relativeTo", "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", @@ -231,7 +230,6 @@ const expectedOpsForZonedRelativeTo = [ "call options.largestUnit.toString", "get options.relativeTo", "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", diff --git a/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-number.js b/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-number.js index 6aee637fc1..682e48a490 100644 --- a/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.Duration(1, 0, 0, 0, 24); const calendar = 19970327; -let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; -const result1 = instance.round({ largestUnit: "years", relativeTo }); -TemporalHelpers.assertDuration(result1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); - -relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; -const result2 = instance.round({ largestUnit: "years", relativeTo }); -TemporalHelpers.assertDuration(result2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar (nested property)"); +const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; +const result = instance.round({ largestUnit: "years", relativeTo }); +TemporalHelpers.assertDuration(result, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws( RangeError, () => instance.round({ largestUnit: "years", relativeTo }), `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar` ); - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.round({ largestUnit: "years", relativeTo }), - `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-wrong-type.js index 0baa3c35ad..92101c6f91 100644 --- a/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Duration/prototype/round/relativeto-propertybag-calendar-wrong-type.js @@ -22,11 +22,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.round({ largestUnit: "years", relativeTo }), `${description} does not convert to a valid ISO string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.round({ largestUnit: "years", relativeTo }), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -39,12 +36,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.round({ largestUnit: "years", relativeTo }), `${description} is not a valid property bag and does not convert to a string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.round({ largestUnit: "years", relativeTo }), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.round({ largestUnit: "years", relativeTo }), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Duration/prototype/subtract/order-of-operations.js b/test/built-ins/Temporal/Duration/prototype/subtract/order-of-operations.js index dc000b9de0..42ec072712 100644 --- a/test/built-ins/Temporal/Duration/prototype/subtract/order-of-operations.js +++ b/test/built-ins/Temporal/Duration/prototype/subtract/order-of-operations.js @@ -71,7 +71,6 @@ actual.splice(0); // clear const expectedOpsForPlainRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", // PrepareTemporalFields @@ -136,7 +135,6 @@ actual.splice(0); // clear const expectedOpsForZonedRelativeTo = expected.concat([ // ToRelativeTemporalObject "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", // PrepareTemporalFields diff --git a/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-number.js b/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-number.js index d00e30568f..ff3b452eb2 100644 --- a/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.Duration(1, 0, 0, 1); const calendar = 19970327; -let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; -const result1 = instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }); -TemporalHelpers.assertDuration(result1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); - -relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; -const result2 = instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }); -TemporalHelpers.assertDuration(result2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar (nested property)"); +const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; +const result = instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }); +TemporalHelpers.assertDuration(result, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for relativeTo.calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws( RangeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar` ); - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), - `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-wrong-type.js index eb831ff77f..2aa220661a 100644 --- a/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Duration/prototype/subtract/relativeto-propertybag-calendar-wrong-type.js @@ -22,11 +22,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `${description} does not convert to a valid ISO string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -39,12 +36,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `${description} is not a valid property bag and does not convert to a string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.subtract(new Temporal.Duration(0, 0, 0, 0, 24), { relativeTo }), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Duration/prototype/total/order-of-operations.js b/test/built-ins/Temporal/Duration/prototype/total/order-of-operations.js index d559ba3b35..f6420b37d0 100644 --- a/test/built-ins/Temporal/Duration/prototype/total/order-of-operations.js +++ b/test/built-ins/Temporal/Duration/prototype/total/order-of-operations.js @@ -36,7 +36,6 @@ const expectedOpsForPlainRelativeTo = [ // ToRelativeTemporalObject "get options.relativeTo", "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", @@ -144,7 +143,6 @@ const expectedOpsForZonedRelativeTo = [ // ToRelativeTemporalObject "get options.relativeTo", "get options.relativeTo.calendar", - "has options.relativeTo.calendar.calendar", "get options.relativeTo.calendar.fields", "call options.relativeTo.calendar.fields", "get options.relativeTo.day", diff --git a/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-number.js b/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-number.js index 773e2f03bb..6633ab616c 100644 --- a/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Duration(1, 0, 0, 0, 24); const calendar = 19970327; -let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; -const result1 = instance.total({ unit: "days", relativeTo }); -assert.sameValue(result1, 367, "19970327 is a valid ISO string for relativeTo.calendar"); - -relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; -const result2 = instance.total({ unit: "days", relativeTo }); -assert.sameValue(result2, 367, "19970327 is a valid ISO string for relativeTo.calendar (nested property)"); +const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; +const result = instance.total({ unit: "days", relativeTo }); +assert.sameValue(result, 367, "19970327 is a valid ISO string for relativeTo.calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws( RangeError, () => instance.total({ unit: "days", relativeTo }), `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar` ); - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.total({ unit: "days", relativeTo }), - `Number ${calendar} does not convert to a valid ISO string for relativeTo.calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-wrong-type.js index d225356a5e..858661c01e 100644 --- a/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/Duration/prototype/total/relativeto-propertybag-calendar-wrong-type.js @@ -22,11 +22,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.total({ unit: "days", relativeTo }), `${description} does not convert to a valid ISO string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.total({ unit: "days", relativeTo }), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -39,12 +36,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; + const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.total({ unit: "days", relativeTo }), `${description} is not a valid property bag and does not convert to a string`); - - relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.total({ unit: "days", relativeTo }), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const relativeTo = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.total({ unit: "days", relativeTo }), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 856a24f3bc..0000000000 --- a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.instant.prototype.tozoneddatetime -description: > - A Temporal.Calendar instance passed to toZonedDateTime() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Instant(1_000_000_000_000_000_000n); - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }); -instance.toZonedDateTime({ calendar: { calendar: arg }, timeZone: "UTC" }); diff --git a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-string-leap-second.js b/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-string-leap-second.js index 65c4f30a89..185517ed1a 100644 --- a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-string-leap-second.js @@ -9,18 +9,10 @@ features: [Temporal] const instance = new Temporal.Instant(1_000_000_000_000_000_000n); -let arg = "2016-12-31T23:59:60"; -const result1 = instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }); +const arg = "2016-12-31T23:59:60"; +const result = instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-wrong-type.js b/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-wrong-type.js index 24c2a13b60..dbac639c89 100644 --- a/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-wrong-type.js +++ b/test/built-ins/Temporal/Instant/prototype/toZonedDateTime/calendar-wrong-type.js @@ -22,7 +22,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => instance.toZonedDateTime({ calendar: { calendar: arg }, timeZone: "UTC" }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -31,5 +30,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => instance.toZonedDateTime({ calendar: arg, timeZone: "UTC" }), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => instance.toZonedDateTime({ calendar: { calendar: arg }, timeZone: "UTC" }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/Now/plainDate/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Now/plainDate/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index c8e606ecca..0000000000 --- a/test/built-ins/Temporal/Now/plainDate/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.now.plaindate -description: > - A Temporal.Calendar instance passed to plainDate() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -Temporal.Now.plainDate(arg); -Temporal.Now.plainDate({ calendar: arg }); diff --git a/test/built-ins/Temporal/Now/plainDate/calendar-string-leap-second.js b/test/built-ins/Temporal/Now/plainDate/calendar-string-leap-second.js index dbf0dce013..ba9192a4d6 100644 --- a/test/built-ins/Temporal/Now/plainDate/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/Now/plainDate/calendar-string-leap-second.js @@ -7,18 +7,10 @@ description: Leap second is a valid ISO string for Calendar features: [Temporal] ---*/ -let arg = "2016-12-31T23:59:60"; -const result1 = Temporal.Now.plainDate(arg); +const arg = "2016-12-31T23:59:60"; +const result = Temporal.Now.plainDate(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = Temporal.Now.plainDate(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Now/plainDate/calendar-wrong-type.js b/test/built-ins/Temporal/Now/plainDate/calendar-wrong-type.js index 7aa62022e0..be8b7ddd03 100644 --- a/test/built-ins/Temporal/Now/plainDate/calendar-wrong-type.js +++ b/test/built-ins/Temporal/Now/plainDate/calendar-wrong-type.js @@ -20,7 +20,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => Temporal.Now.plainDate(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => Temporal.Now.plainDate({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -29,5 +28,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => Temporal.Now.plainDate(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => Temporal.Now.plainDate({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 3bddf244a1..0000000000 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.now.plaindatetime -description: > - A Temporal.Calendar instance passed to plainDateTime() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -Temporal.Now.plainDateTime(arg); -Temporal.Now.plainDateTime({ calendar: arg }); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-call-tostring.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-call-tostring.js deleted file mode 100644 index fbc15b4919..0000000000 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-call-tostring.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.plaindatetime -description: Forwards error thrown by invoking "toString" property -features: [Temporal] ----*/ - -var calendar = { - calendar: { - calendar: true, - toString: function() { - throw new Test262Error(); - }, - } -}; - -assert.throws(Test262Error, function() { - Temporal.Now.plainDateTime(calendar); -}, 'Temporal.Now.plainDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-get-calendar.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-get-calendar.js deleted file mode 100644 index 9f3a9b61b6..0000000000 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-get-calendar.js +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.plaindatetime -description: Forwards error thrown by retrieving value of "calendar" property -features: [Temporal] ----*/ - -var calendar = { - get calendar() { - throw new Test262Error(); - }, -}; - -assert.throws(Test262Error, function() { - Temporal.Now.plainDateTime(calendar); -}, 'Temporal.Now.plainDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-calendar.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-calendar.js deleted file mode 100644 index f7d71b30b2..0000000000 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-calendar.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.now.plaindatetime -description: Forwards error thrown by checking presence of "calendar" property -features: [Proxy, Temporal] ----*/ - -var calendar = new Proxy({}, { - has: function(target, property) { - if (property === 'calendar') { - throw new Test262Error(); - } - }, -}); - -assert.throws(Test262Error, function() { - Temporal.Now.plainDateTime(calendar); -}, 'Temporal.Now.plainDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-nested-calendar.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-nested-calendar.js deleted file mode 100644 index e43ca5457e..0000000000 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-object-fail-has-nested-calendar.js +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.plaindatetime -description: Forwards error thrown by checking presence of nested "calendar" property -features: [Proxy, Temporal] ----*/ - -var calendar = { - calendar: new Proxy({}, { - has: function(target, property) { - if (property === 'calendar') { - throw new Test262Error(); - } - }, - }) -}; - -assert.throws(Test262Error, function() { - Temporal.Now.plainDateTime(calendar); -}, 'Temporal.Now.plainDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-object.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-object.js index 6e1527edfb..0d7b3cdb1b 100644 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-object.js +++ b/test/built-ins/Temporal/Now/plainDateTime/calendar-object.js @@ -9,26 +9,10 @@ features: [Proxy, Temporal] ---*/ const actual = []; -const expectedWithout = [ - 'has calendar.calendar', - 'get calendar.calendar', - 'has nestedCalendar.calendar' -]; -const expectedWith = [ - 'has calendar.calendar', - 'get calendar.calendar', - 'has nestedCalendar.calendar', - 'get nestedCalendar[Symbol.toPrimitive]', - 'get nestedCalendar.toString', - 'call nestedCalendar.toString' -]; -const nestedCalendar = TemporalHelpers.calendarObserver(actual, "nestedCalendar", { - toString: "iso8601", -}); + const calendar = TemporalHelpers.calendarObserver(actual, "calendar", { toString: "iso8601", }); -calendar.calendar = nestedCalendar; Object.defineProperty(Temporal.Calendar, 'from', { get() { @@ -39,11 +23,4 @@ Object.defineProperty(Temporal.Calendar, 'from', { Temporal.Now.plainDateTime(calendar); -assert.compareArray(actual, expectedWithout, 'Observable interactions without `calendar` property'); - -actual.length = 0; -nestedCalendar.calendar = null; - -Temporal.Now.plainDateTime(calendar); - -assert.compareArray(actual, expectedWith, 'Observable interactions with `calendar` property'); +assert.compareArray(actual, [], 'no observable operations should be invoked'); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-string-leap-second.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-string-leap-second.js index 743ba541a7..352f33ae84 100644 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/Now/plainDateTime/calendar-string-leap-second.js @@ -7,18 +7,10 @@ description: Leap second is a valid ISO string for Calendar features: [Temporal] ---*/ -let arg = "2016-12-31T23:59:60"; -const result1 = Temporal.Now.plainDateTime(arg); +const arg = "2016-12-31T23:59:60"; +const result = Temporal.Now.plainDateTime(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = Temporal.Now.plainDateTime(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Now/plainDateTime/calendar-wrong-type.js b/test/built-ins/Temporal/Now/plainDateTime/calendar-wrong-type.js index 47a2e0ed18..b9542a0a53 100644 --- a/test/built-ins/Temporal/Now/plainDateTime/calendar-wrong-type.js +++ b/test/built-ins/Temporal/Now/plainDateTime/calendar-wrong-type.js @@ -20,7 +20,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => Temporal.Now.plainDateTime(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => Temporal.Now.plainDateTime({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -29,5 +28,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => Temporal.Now.plainDateTime(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => Temporal.Now.plainDateTime({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index c247c6bb2e..0000000000 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.now.zoneddatetime -description: > - A Temporal.Calendar instance passed to zonedDateTime() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -Temporal.Now.zonedDateTime(arg); -Temporal.Now.zonedDateTime({ calendar: arg }); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-call-tostring.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-call-tostring.js deleted file mode 100644 index 84551f311c..0000000000 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-call-tostring.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.zoneddatetime -description: Forwards error thrown by invoking "toString" property -features: [Temporal] ----*/ - -var calendar = { - calendar: { - calendar: true, - toString: function() { - throw new Test262Error(); - }, - } -}; - -assert.throws(Test262Error, function() { - Temporal.Now.zonedDateTime(calendar); -}, 'Temporal.Now.zonedDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-get-calendar.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-get-calendar.js deleted file mode 100644 index e85e358ccc..0000000000 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-get-calendar.js +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.zoneddatetime -description: Forwards error thrown by retrieving value of "calendar" property -features: [Temporal] ----*/ - -var calendar = { - get calendar() { - throw new Test262Error(); - }, -}; - -assert.throws(Test262Error, function() { - Temporal.Now.zonedDateTime(calendar); -}, 'Temporal.Now.zonedDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-calendar.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-calendar.js deleted file mode 100644 index f92915646a..0000000000 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-calendar.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.now.zoneddatetime -description: Forwards error thrown by checking presence of "calendar" property -features: [Proxy, Temporal] ----*/ - -var calendar = new Proxy({}, { - has: function(target, property) { - if (property === 'calendar') { - throw new Test262Error(); - } - }, -}); - -assert.throws(Test262Error, function() { - Temporal.Now.zonedDateTime(calendar); -}, 'Temporal.Now.zonedDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-nested-calendar.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-nested-calendar.js deleted file mode 100644 index 2a5ccfe092..0000000000 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object-fail-has-nested-calendar.js +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (C) 2021 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. -/*--- -esid: sec-temporal.now.zoneddatetime -description: Forwards error thrown by checking presence of nested "calendar" property -features: [Proxy, Temporal] ----*/ - -var calendar = { - calendar: new Proxy({}, { - has: function(target, property) { - if (property === 'calendar') { - throw new Test262Error(); - } - }, - }) -}; - -assert.throws(Test262Error, function() { - Temporal.Now.zonedDateTime(calendar); -}, 'Temporal.Now.zonedDateTime(calendar) throws a Test262Error exception'); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object.js index a2e2129be8..5a0a398c57 100644 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-object.js +++ b/test/built-ins/Temporal/Now/zonedDateTime/calendar-object.js @@ -9,26 +9,10 @@ features: [Proxy, Temporal] ---*/ const actual = []; -const expectedWithout = [ - 'has calendar.calendar', - 'get calendar.calendar', - 'has nestedCalendar.calendar' -]; -const expectedWith = [ - 'has calendar.calendar', - 'get calendar.calendar', - 'has nestedCalendar.calendar', - 'get nestedCalendar[Symbol.toPrimitive]', - 'get nestedCalendar.toString', - 'call nestedCalendar.toString' -]; -const nestedCalendar = TemporalHelpers.calendarObserver(actual, "nestedCalendar", { - toString: "iso8601", -}); + const calendar = TemporalHelpers.calendarObserver(actual, "calendar", { toString: "iso8601", }); -calendar.calendar = nestedCalendar; Object.defineProperty(Temporal.Calendar, 'from', { get() { @@ -39,11 +23,4 @@ Object.defineProperty(Temporal.Calendar, 'from', { Temporal.Now.zonedDateTime(calendar); -assert.compareArray(actual, expectedWithout, 'Observable interactions without `calendar` property'); - -actual.length = 0; -nestedCalendar.calendar = null; - -Temporal.Now.zonedDateTime(calendar); - -assert.compareArray(actual, expectedWith, 'Observable interactions with `calendar` property'); +assert.compareArray(actual, [], 'no observable operations should be invoked'); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-string-leap-second.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-string-leap-second.js index 5209e35187..6a7bfab7a4 100644 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/Now/zonedDateTime/calendar-string-leap-second.js @@ -7,18 +7,10 @@ description: Leap second is a valid ISO string for Calendar features: [Temporal] ---*/ -let arg = "2016-12-31T23:59:60"; -const result1 = Temporal.Now.zonedDateTime(arg); +const arg = "2016-12-31T23:59:60"; +const result = Temporal.Now.zonedDateTime(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = Temporal.Now.zonedDateTime(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/Now/zonedDateTime/calendar-wrong-type.js b/test/built-ins/Temporal/Now/zonedDateTime/calendar-wrong-type.js index 1a6196458a..b781ccc616 100644 --- a/test/built-ins/Temporal/Now/zonedDateTime/calendar-wrong-type.js +++ b/test/built-ins/Temporal/Now/zonedDateTime/calendar-wrong-type.js @@ -20,7 +20,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => Temporal.Now.zonedDateTime(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => Temporal.Now.zonedDateTime({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -29,5 +28,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => Temporal.Now.zonedDateTime(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => Temporal.Now.zonedDateTime({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/PlainDate/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 78d74ae71e..0000000000 --- a/test/built-ins/Temporal/PlainDate/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate -description: > - A Temporal.Calendar instance passed to new PlainDate() does not have - its 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -new Temporal.PlainDate(2000, 5, 2, arg); -new Temporal.PlainDate(2000, 5, 2, { calendar: arg }); diff --git a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-case-insensitive.js index f1c81c7b1b..964ee7d1b4 100644 --- a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-case-insensitive.js @@ -9,14 +9,8 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); assert.sameValue(result1, 0, "Calendar is case-insensitive (first argument)"); const result2 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); assert.sameValue(result2, 0, "Calendar is case-insensitive (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); -assert.sameValue(result3, 0, "Calendar is case-insensitive (nested property, first argument)"); -const result4 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); -assert.sameValue(result4, 0, "Calendar is case-insensitive (nested property, second argument)"); diff --git a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 65dc0d4585..0000000000 --- a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.compare -description: > - A Temporal.Calendar instance passed to compare() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -Temporal.PlainDate.compare(arg, arg); diff --git a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-leap-second.js index 94b12a67ab..bfe3ff02e6 100644 --- a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-leap-second.js @@ -9,14 +9,8 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); assert.sameValue(result1, 0, "leap second is a valid ISO string for calendar (first argument)"); const result2 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); assert.sameValue(result2, 0, "leap second is a valid ISO string for calendar (first argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); -assert.sameValue(result3, 0, "leap second is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); -assert.sameValue(result4, 0, "leap second is a valid ISO string for calendar (nested property, second argument)"); diff --git a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-number.js index debcfec9c1..6e85dcc654 100644 --- a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-number.js @@ -9,18 +9,12 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); assert.sameValue(result1, 0, "19970327 is a valid ISO string for calendar (first argument)"); const result2 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); assert.sameValue(result2, 0, "19970327 is a valid ISO string for calendar (first argument)"); -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)); -assert.sameValue(result3, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg); -assert.sameValue(result4, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); - const numbers = [ 1, -19970327, @@ -28,7 +22,7 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), @@ -39,15 +33,4 @@ for (const calendar of numbers) { () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `Number ${calendar} does not convert to a valid ISO string for calendar (second argument)` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, first argument)` - ); - assert.throws( - RangeError, - () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, second argument)` - ); } diff --git a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-wrong-type.js index 41814c6015..1b017b5114 100644 --- a/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/compare/argument-propertybag-calendar-wrong-type.js @@ -19,13 +19,9 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), `${description} does not convert to a valid ISO string (first argument)`); assert.throws(RangeError, () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `${description} does not convert to a valid ISO string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), `${description} does not convert to a valid ISO string (nested property, first argument)`); - assert.throws(RangeError, () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `${description} does not convert to a valid ISO string (nested property, second argument)`); } const typeErrorTests = [ @@ -36,15 +32,7 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), `${description} is not a valid property bag and does not convert to a string (first argument)`); assert.throws(TypeError, () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `${description} is not a valid property bag and does not convert to a string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), `${description} is not a valid property bag and does not convert to a string (nested property, first argument)`); - assert.throws(TypeError, () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `${description} is not a valid property bag and does not convert to a string (nested property, second argument)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainDate.compare(arg, new Temporal.PlainDate(1976, 11, 18)), `nested undefined calendar property is always a RangeError (first argument)`); -assert.throws(RangeError, () => Temporal.PlainDate.compare(new Temporal.PlainDate(1976, 11, 18), arg), `nested undefined calendar property is always a RangeError (second argument)`); diff --git a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-case-insensitive.js index e756f79c55..a85901e4f2 100644 --- a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-case-insensitive.js @@ -10,10 +10,6 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDate.from(arg); -TemporalHelpers.assertPlainDate(result1, 1976, 11, "M11", 18, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDate.from(arg); -TemporalHelpers.assertPlainDate(result2, 1976, 11, "M11", 18, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDate.from(arg); +TemporalHelpers.assertPlainDate(result, 1976, 11, "M11", 18, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index cb48821b06..0000000000 --- a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.from -description: > - A Temporal.Calendar instance passed to from() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -Temporal.PlainDate.from(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -Temporal.PlainDate.from(arg); diff --git a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-leap-second.js index 4455b5fc2f..b5c3020547 100644 --- a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-leap-second.js @@ -10,18 +10,10 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDate.from(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDate.from(arg); TemporalHelpers.assertPlainDate( - result1, + result, 1976, 11, "M11", 18, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDate.from(arg); -TemporalHelpers.assertPlainDate( - result2, - 1976, 11, "M11", 18, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-number.js index 634405c734..9a1079efd1 100644 --- a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-number.js @@ -10,13 +10,9 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDate.from(arg); -TemporalHelpers.assertPlainDate(result1, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDate.from(arg); -TemporalHelpers.assertPlainDate(result2, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDate.from(arg); +TemporalHelpers.assertPlainDate(result, 1976, 11, "M11", 18, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -25,16 +21,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => Temporal.PlainDate.from(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainDate.from(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-wrong-type.js index 9cb16543ed..9981cc213f 100644 --- a/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/from/argument-propertybag-calendar-wrong-type.js @@ -18,11 +18,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainDate.from(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainDate.from(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -33,12 +30,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainDate.from(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainDate.from(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainDate.from(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDate/from/order-of-operations.js b/test/built-ins/Temporal/PlainDate/from/order-of-operations.js index cf7681900f..4bcfc4f941 100644 --- a/test/built-ins/Temporal/PlainDate/from/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDate/from/order-of-operations.js @@ -10,7 +10,6 @@ features: [Temporal] const expected = [ "get fields.calendar", - "has fields.calendar.calendar", "get fields.calendar.fields", "call fields.calendar.fields", "get fields.day", diff --git a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-case-insensitive.js index 2bbc7834b3..199fd6601b 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 863166bbfa..0000000000 --- a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.prototype.equals -description: > - A Temporal.Calendar instance passed to equals() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDate(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.equals(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.equals(arg); diff --git a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-leap-second.js index 2d24e808b2..e6fec06888 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-number.js index 22e505924f..c8ebd39e1f 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.equals(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.equals(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-wrong-type.js index 2e5f4c34bb..d95c767789 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/prototype/equals/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.equals(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-case-insensitive.js index 976d5920a3..3afedb0745 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 8a2685ebc4..0000000000 --- a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.prototype.since -description: > - A Temporal.Calendar instance passed to since() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDate(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.since(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.since(arg); diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-leap-second.js index c65e3e141f..ef6e5c44d6 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-number.js index c1156c06dc..8625ceb456 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.since(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.since(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-wrong-type.js index 3460f40198..0c05fc81a0 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/prototype/since/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.since(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDate/prototype/since/order-of-operations.js b/test/built-ins/Temporal/PlainDate/prototype/since/order-of-operations.js index 10d5a02d87..9cdb7e2c38 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/since/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDate/prototype/since/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDate "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-case-insensitive.js index db2b4d76ba..71a5dd19f8 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 0d33317313..0000000000 --- a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.prototype.until -description: > - A Temporal.Calendar instance passed to until() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDate(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.until(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.until(arg); diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-leap-second.js index a0a12252cc..d250a6195a 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-number.js index 2a73bffd8d..c050c717b0 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainDate(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.until(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.until(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-wrong-type.js index 36bf6986ea..932a2ae0bf 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/prototype/until/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.until(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDate/prototype/until/order-of-operations.js b/test/built-ins/Temporal/PlainDate/prototype/until/order-of-operations.js index 4f92a31b63..81f9c65d45 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/until/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDate/prototype/until/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDate "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 5169231ac3..0000000000 --- a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindate.prototype.withcalendar -description: > - A Temporal.Calendar instance passed to withCalendar() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDate(1976, 11, 18, { id: "replace-me" }); - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -instance.withCalendar(arg); -instance.withCalendar({ calendar: arg }); diff --git a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-string-leap-second.js b/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-string-leap-second.js index 6382f00473..1adf612825 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-string-leap-second.js @@ -9,18 +9,10 @@ features: [Temporal] const instance = new Temporal.PlainDate(1976, 11, 18, { id: "replace-me" }); -let arg = "2016-12-31T23:59:60"; -const result1 = instance.withCalendar(arg); +const arg = "2016-12-31T23:59:60"; +const result = instance.withCalendar(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = instance.withCalendar(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-wrong-type.js b/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-wrong-type.js index 110b49a3e6..8e7c894d42 100644 --- a/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDate/prototype/withCalendar/calendar-wrong-type.js @@ -22,7 +22,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => instance.withCalendar(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => instance.withCalendar({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -31,5 +30,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => instance.withCalendar(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => instance.withCalendar({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/PlainDateTime/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 0e7bcf6fc7..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime -description: > - A Temporal.Calendar instance passed to new PlainDateTime() does not have - its 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -new Temporal.PlainDateTime(2000, 5, 2, 15, 23, 30, 987, 654, 321, arg); -new Temporal.PlainDateTime(2000, 5, 2, 15, 23, 30, 987, 654, 321, { calendar: arg }); diff --git a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-case-insensitive.js index 094f274838..5ecd1cd2ef 100644 --- a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-case-insensitive.js @@ -9,14 +9,8 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); assert.sameValue(result1, 0, "Calendar is case-insensitive (first argument)"); const result2 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); assert.sameValue(result2, 0, "Calendar is case-insensitive (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); -assert.sameValue(result3, 0, "Calendar is case-insensitive (nested property, first argument)"); -const result4 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); -assert.sameValue(result4, 0, "Calendar is case-insensitive (nested property, second argument)"); diff --git a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 22437da13a..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.compare -description: > - A Temporal.Calendar instance passed to compare() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -Temporal.PlainDateTime.compare(arg, arg); diff --git a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-leap-second.js index 37547e3272..b5ccdfb732 100644 --- a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-leap-second.js @@ -9,15 +9,8 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); assert.sameValue(result1, 0, "leap second is a valid ISO string for calendar (first argument)"); const result2 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); assert.sameValue(result2, 0, "leap second is a valid ISO string for calendar (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); -assert.sameValue(result3, 0, "leap second is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); -assert.sameValue(result4, 0, "leap second is a valid ISO string for calendar (nested property, second argument)"); - diff --git a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-number.js index eb830da34f..1a765d6bf1 100644 --- a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-number.js @@ -9,18 +9,12 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; const result1 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); assert.sameValue(result1, 0, "19970327 is a valid ISO string for calendar (first argument)"); const result2 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); assert.sameValue(result2, 0, "19970327 is a valid ISO string for calendar (second argument)"); -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result3 = Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)); -assert.sameValue(result3, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg); -assert.sameValue(result4, 0, "19970327 is a valid ISO string for calendar (nested property, second argument)"); - const numbers = [ 1, -19970327, @@ -28,7 +22,7 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), @@ -39,15 +33,4 @@ for (const calendar of numbers) { () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `Number ${calendar} does not convert to a valid ISO string for calendar (second argument)` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, first argument)` - ); - assert.throws( - RangeError, - () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, second argument)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-wrong-type.js index 5ef7ce833d..0af17c1f57 100644 --- a/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/compare/argument-propertybag-calendar-wrong-type.js @@ -19,13 +19,9 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), `${description} does not convert to a valid ISO string (first argument)`); assert.throws(RangeError, () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `${description} does not convert to a valid ISO string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), `${description} does not convert to a valid ISO string (nested property, first argument)`); - assert.throws(RangeError, () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `${description} does not convert to a valid ISO string (nested property, second argument)`); } const typeErrorTests = [ @@ -36,15 +32,7 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), `${description} is not a valid property bag and does not convert to a string (first argument)`); assert.throws(TypeError, () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `${description} is not a valid property bag and does not convert to a string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), `${description} is not a valid property bag and does not convert to a string (nested property, first argument)`); - assert.throws(TypeError, () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `${description} is not a valid property bag and does not convert to a string (nested property, second argument)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)), `nested undefined calendar property is always a RangeError (first argument)`); -assert.throws(RangeError, () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg), `nested undefined calendar property is always a RangeError (second argument)`); diff --git a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-case-insensitive.js index 349075e6f6..d2ae9dfc0a 100644 --- a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-case-insensitive.js @@ -10,10 +10,6 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDateTime.from(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDateTime.from(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDateTime.from(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 8ac5e5a621..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.from -description: > - A Temporal.Calendar instance passed to from() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -Temporal.PlainDateTime.from(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -Temporal.PlainDateTime.from(arg); diff --git a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-leap-second.js index 4e19d8ac56..f37bc1c9b3 100644 --- a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-leap-second.js @@ -10,18 +10,10 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDateTime.from(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDateTime.from(arg); TemporalHelpers.assertPlainDateTime( - result1, + result, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDateTime.from(arg); -TemporalHelpers.assertPlainDateTime( - result2, - 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-number.js index ae00e596a0..7de68bd5c7 100644 --- a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-number.js @@ -10,13 +10,9 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainDateTime.from(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainDateTime.from(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainDateTime.from(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -25,16 +21,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => Temporal.PlainDateTime.from(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainDateTime.from(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-wrong-type.js index e81f58d4b4..4cc700e618 100644 --- a/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/from/argument-propertybag-calendar-wrong-type.js @@ -18,11 +18,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainDateTime.from(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainDateTime.from(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -33,12 +30,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainDateTime.from(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainDateTime.from(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainDateTime.from(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDateTime/from/order-of-operations.js b/test/built-ins/Temporal/PlainDateTime/from/order-of-operations.js index 8b8de69589..fa7519926e 100644 --- a/test/built-ins/Temporal/PlainDateTime/from/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDateTime/from/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // GetTemporalCalendarWithISODefault "get fields.calendar", - "has fields.calendar.calendar", // CalendarFields "get fields.calendar.fields", "call fields.calendar.fields", diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js index 7d1f00f5fd..b0ed162f6f 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index b9c52f4d0c..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.prototype.equals -description: > - A Temporal.Calendar instance passed to equals() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDateTime(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.equals(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.equals(arg); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js index 2ef93da20c..018b01f2c7 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-number.js index 347888b944..65f079bfd6 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.equals(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.equals(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js index bfbdcec946..fcaea3bf00 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.equals(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js index b9ec567572..1f8bac6a78 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 253e512efb..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.prototype.since -description: > - A Temporal.Calendar instance passed to since() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDateTime(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.since(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.since(arg); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-leap-second.js index dd989748cc..7a1f7672bd 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-number.js index e12a26b735..3f116e5ade 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.since(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.since(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js index 42f638759c..7107d4e735 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.since(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/since/order-of-operations.js b/test/built-ins/Temporal/PlainDateTime/prototype/since/order-of-operations.js index 400eb5a335..d49a3e0694 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/since/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/since/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDateTime "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js index d0f739e30d..2d9dd762ce 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 1dfb4e252a..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.prototype.until -description: > - A Temporal.Calendar instance passed to until() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDateTime(1976, 11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.until(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.until(arg); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-leap-second.js index b49bd1593d..b50e3d3f41 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-number.js index 8cf4915c7f..2ebeeaf996 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainDateTime(1976, 11, 18); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.until(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.until(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js index 611f6724cc..c51e57168c 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.until(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/until/order-of-operations.js b/test/built-ins/Temporal/PlainDateTime/prototype/until/order-of-operations.js index ac1ab6fc25..3c00177447 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/until/order-of-operations.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/until/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalDateTime "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 423e131faa..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.prototype.withcalendar -description: > - A Temporal.Calendar instance passed to withCalendar() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDateTime(1976, 11, 18, 15, 23, 30, 123, 456, 789, { id: "replace-me" }); - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -instance.withCalendar(arg); -instance.withCalendar({ calendar: arg }); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-string-leap-second.js b/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-string-leap-second.js index 44cade306b..a883e9879a 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-string-leap-second.js @@ -9,18 +9,10 @@ features: [Temporal] const instance = new Temporal.PlainDateTime(1976, 11, 18, 15, 23, 30, 123, 456, 789, { id: "replace-me" }); -let arg = "2016-12-31T23:59:60"; -const result1 = instance.withCalendar(arg); +const arg = "2016-12-31T23:59:60"; +const result = instance.withCalendar(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = instance.withCalendar(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-wrong-type.js index d1573af2d1..a36bffb011 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withCalendar/calendar-wrong-type.js @@ -22,7 +22,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => instance.withCalendar(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => instance.withCalendar({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -31,5 +30,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => instance.withCalendar(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => instance.withCalendar({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js index de04c1e692..9a08d720a2 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainDateTime(2000, 5, 2, 12, 34, 56, 987, 654, 32 const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 60f5a20979..0000000000 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaindatetime.prototype.withplaindate -description: > - A Temporal.Calendar instance passed to withPlainDate() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainDateTime(2000, 5, 2, 12, 34, 56, 987, 654, 321); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.withPlainDate(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.withPlainDate(arg); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js index db9a51215e..64a98af2e2 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainDateTime(2000, 5, 2, 12, 34, 56, 987, 654, 32 const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); TemporalHelpers.assertPlainDateTime( - result1, + result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -TemporalHelpers.assertPlainDateTime( - result2, - 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js index c9ae966915..af4f9cc7f1 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainDateTime(2000, 5, 2, 12, 34, 56, 987, 654, 32 const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.withPlainDate(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.withPlainDate(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js index 7fbae64fc5..a8dbe64756 100644 --- a/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.withPlainDate(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.withPlainDate(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.withPlainDate(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.withPlainDate(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.withPlainDate(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainMonthDay/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainMonthDay/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 6f5bba578b..0000000000 --- a/test/built-ins/Temporal/PlainMonthDay/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainmonthday -description: > - A Temporal.Calendar instance passed to new PlainMonthDay() does not have - its 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -new Temporal.PlainMonthDay(12, 15, arg, 1972); -new Temporal.PlainMonthDay(12, 15, { calendar: arg }, 1972); diff --git a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-case-insensitive.js index 1f18ec3246..bdd4634474 100644 --- a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-case-insensitive.js @@ -10,10 +10,6 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainMonthDay.from(arg); -TemporalHelpers.assertPlainMonthDay(result1, "M11", 18, "Calendar is case-insensitive"); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainMonthDay.from(arg); -TemporalHelpers.assertPlainMonthDay(result2, "M11", 18, "Calendar is case-insensitive (nested property)"); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainMonthDay.from(arg); +TemporalHelpers.assertPlainMonthDay(result, "M11", 18, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index a2f287eb9c..0000000000 --- a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainmonthday.from -description: > - A Temporal.Calendar instance passed to from() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { monthCode: "M11", day: 18, calendar }; -Temporal.PlainMonthDay.from(arg); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -Temporal.PlainMonthDay.from(arg); diff --git a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-leap-second.js index 1a2d2cd042..d264961240 100644 --- a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-leap-second.js @@ -10,18 +10,10 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainMonthDay.from(arg); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainMonthDay.from(arg); TemporalHelpers.assertPlainMonthDay( - result1, + result, "M11", 18, "leap second is a valid ISO string for calendar" ); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainMonthDay.from(arg); -TemporalHelpers.assertPlainMonthDay( - result2, - "M11", 18, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-number.js index 56eec0c427..0b66649723 100644 --- a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-number.js @@ -10,13 +10,9 @@ features: [Temporal] const calendar = 19970327; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = Temporal.PlainMonthDay.from(arg); -TemporalHelpers.assertPlainMonthDay(result1, "M11", 18, "19970327 is a valid ISO string for calendar"); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = Temporal.PlainMonthDay.from(arg); -TemporalHelpers.assertPlainMonthDay(result2, "M11", 18, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = Temporal.PlainMonthDay.from(arg); +TemporalHelpers.assertPlainMonthDay(result, "M11", 18, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -25,16 +21,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { monthCode: "M11", day: 18, calendar }; + const arg = { monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => Temporal.PlainMonthDay.from(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainMonthDay.from(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-wrong-type.js index fceeb50eab..723ad5a904 100644 --- a/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainMonthDay/from/argument-propertybag-calendar-wrong-type.js @@ -18,11 +18,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainMonthDay.from(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainMonthDay.from(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -33,12 +30,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainMonthDay.from(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainMonthDay.from(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainMonthDay.from(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainMonthDay/from/order-of-operations.js b/test/built-ins/Temporal/PlainMonthDay/from/order-of-operations.js index a6f3c7fcfe..0c31a12beb 100644 --- a/test/built-ins/Temporal/PlainMonthDay/from/order-of-operations.js +++ b/test/built-ins/Temporal/PlainMonthDay/from/order-of-operations.js @@ -10,8 +10,6 @@ features: [Temporal] const expected = [ "get fields.calendar", - // ToTemporalCalendarWithISODefault - "has fields.calendar.calendar", // CalendarFields "get fields.calendar.fields", "call fields.calendar.fields", diff --git a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-case-insensitive.js index 386f3da59a..bafa6df764 100644 --- a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.PlainMonthDay(11, 18); const calendar = "IsO8601"; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 83074bfcdc..0000000000 --- a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainmonthday.prototype.equals -description: > - A Temporal.Calendar instance passed to equals() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainMonthDay(11, 18); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { monthCode: "M11", day: 18, calendar }; -instance.equals(arg); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -instance.equals(arg); diff --git a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-leap-second.js index 202f5f4318..a932e32fe8 100644 --- a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.PlainMonthDay(11, 18); const calendar = "2016-12-31T23:59:60"; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-number.js index be40e79001..b558e4612e 100644 --- a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.PlainMonthDay(11, 18); const calendar = 19970327; -let arg = { monthCode: "M11", day: 18, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { monthCode: "M11", day: 18, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { monthCode: "M11", day: 18, calendar }; + const arg = { monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.equals(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.equals(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-wrong-type.js index b3b856b20b..c22cbfea50 100644 --- a/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainMonthDay/prototype/equals/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.equals(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-case-insensitive.js index 710e28d458..8c759f73db 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toPlainDateTime(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toPlainDateTime(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toPlainDateTime(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index ccb3efa81c..0000000000 --- a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaintime.prototype.toplaindatetime -description: > - A Temporal.Calendar instance passed to toPlainDateTime() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.toPlainDateTime(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.toPlainDateTime(arg); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-leap-second.js index 6e38a93003..21a0901132 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toPlainDateTime(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toPlainDateTime(arg); TemporalHelpers.assertPlainDateTime( - result1, + result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toPlainDateTime(arg); -TemporalHelpers.assertPlainDateTime( - result2, - 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-number.js index 1353b30b99..2d642c11ce 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toPlainDateTime(arg); -TemporalHelpers.assertPlainDateTime(result1, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toPlainDateTime(arg); -TemporalHelpers.assertPlainDateTime(result2, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toPlainDateTime(arg); +TemporalHelpers.assertPlainDateTime(result, 1976, 11, "M11", 18, 12, 34, 56, 987, 654, 321, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.toPlainDateTime(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.toPlainDateTime(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-wrong-type.js index b74193686c..386a609505 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toPlainDateTime/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.toPlainDateTime(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.toPlainDateTime(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.toPlainDateTime(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.toPlainDateTime(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.toPlainDateTime(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-case-insensitive.js index 39d3572bea..d9565e0d59 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); -assert.sameValue(result1.epochNanoseconds, 217_168_496_987_654_321n, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); -assert.sameValue(result2.epochNanoseconds, 217_168_496_987_654_321n, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); +assert.sameValue(result.epochNanoseconds, 217_168_496_987_654_321n, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 8a04d72597..0000000000 --- a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plaintime.prototype.tozoneddatetime -description: > - A Temporal.Calendar instance passed to toZonedDateTime() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-leap-second.js index 975d536ff8..ad0bda9c19 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); assert.sameValue( - result1.epochNanoseconds, + result.epochNanoseconds, 217_168_496_987_654_321n, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); -assert.sameValue( - result2.epochNanoseconds, - 217_168_496_987_654_321n, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-number.js index 1f40ffa0dc..0dab910df7 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.PlainTime(12, 34, 56, 987, 654, 321); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); -assert.sameValue(result1.epochNanoseconds, 217_168_496_987_654_321n, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); -assert.sameValue(result2.epochNanoseconds, 217_168_496_987_654_321n, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }); +assert.sameValue(result.epochNanoseconds, 217_168_496_987_654_321n, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-wrong-type.js index 22a1101801..08459e393d 100644 --- a/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainTime/prototype/toZonedDateTime/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.toZonedDateTime({ plainDate: arg, timeZone: "UTC" }), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainYearMonth/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 87011f26e9..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth -description: > - A Temporal.Calendar instance passed to new PlainYearMonth() does not have - its 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -new Temporal.PlainYearMonth(2000, 5, arg, 1); -new Temporal.PlainYearMonth(2000, 5, { calendar: arg }, 1); diff --git a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-case-insensitive.js index 0fe7e6675e..b6390fa434 100644 --- a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-case-insensitive.js @@ -9,14 +9,8 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 2019, monthCode: "M06", calendar }; +const arg = { year: 2019, monthCode: "M06", calendar }; const result1 = Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)); assert.sameValue(result1, 0, "Calendar is case-insensitive (first argument)"); const result2 = Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg); assert.sameValue(result2, 0, "Calendar is case-insensitive (second argument)"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result3 = Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)); -assert.sameValue(result3, 0, "Calendar is case-insensitive (nested property, first argument)"); -const result4 = Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg); -assert.sameValue(result4, 0, "Calendar is case-insensitive (nested property, second argument)"); diff --git a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 2fd2387b2e..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth.compare -description: > - A Temporal.Calendar instance passed to compare() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const arg = { year: 2019, monthCode: "M06", calendar }; -Temporal.PlainYearMonth.compare(arg, arg); diff --git a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-leap-second.js new file mode 100644 index 0000000000..63ac224db2 --- /dev/null +++ b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-leap-second.js @@ -0,0 +1,24 @@ +// Copyright (C) 2022 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-temporal.plainyearmonth.compare +description: Leap second is a valid ISO string for a calendar in a property bag +features: [Temporal] +---*/ + +const calendar = "2016-12-31T23:59:60"; + +const arg = { year: 2019, monthCode: "M06", calendar }; +const result1 = Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)); +assert.sameValue( + result1, + 0, + "leap second is a valid ISO string for calendar (first argument)" +); +const result2 = Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg); +assert.sameValue( + result2, + 0, + "leap second is a valid ISO string for calendar (second argument)" +); diff --git a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-number.js index e153ce98fc..cfa815ea48 100644 --- a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-number.js @@ -9,18 +9,12 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 2019, monthCode: "M06", calendar }; +const arg = { year: 2019, monthCode: "M06", calendar }; const result1 = Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)); assert.sameValue(result1, 0, "19970327 is a valid ISO string for calendar (first argument)"); const result2 = Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg); assert.sameValue(result2, 0, "19970327 is a valid ISO string for calendar (second argument)"); -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result3 = Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)); -assert.sameValue(result3, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg); -assert.sameValue(result4, 0, "19970327 is a valid ISO string for calendar (nested property, second argument)"); - const numbers = [ 1, -19970327, @@ -28,7 +22,7 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 2019, monthCode: "M06", calendar }; + const arg = { year: 2019, monthCode: "M06", calendar }; assert.throws( RangeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), @@ -39,15 +33,4 @@ for (const calendar of numbers) { () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `Number ${calendar} does not convert to a valid ISO string for calendar (second argument)` ); - arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, first argument)` - ); - assert.throws( - RangeError, - () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, second argument)` - ); } diff --git a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-wrong-type.js index 778fd52742..bc4538efcb 100644 --- a/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainYearMonth/compare/argument-propertybag-calendar-wrong-type.js @@ -19,13 +19,9 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), `${description} does not convert to a valid ISO string (first argument)`); assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `${description} does not convert to a valid ISO string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), `${description} does not convert to a valid ISO string (nested property, first argument)`); - assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `${description} does not convert to a valid ISO string (nested property, second argument)`); } const typeErrorTests = [ @@ -36,15 +32,7 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), `${description} is not a valid property bag and does not convert to a string (first argument)`); assert.throws(TypeError, () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `${description} is not a valid property bag and does not convert to a string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), `${description} is not a valid property bag and does not convert to a string (nested property, first argument)`); - assert.throws(TypeError, () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `${description} is not a valid property bag and does not convert to a string (nested property, second argument)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(arg, new Temporal.PlainYearMonth(2019, 6)), `nested undefined calendar property is always a RangeError (first argument)`); -assert.throws(RangeError, () => Temporal.PlainYearMonth.compare(new Temporal.PlainYearMonth(2019, 6), arg), `nested undefined calendar property is always a RangeError (second argument)`); diff --git a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-case-insensitive.js index 24dbb023aa..addc6aeef4 100644 --- a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-case-insensitive.js @@ -10,10 +10,6 @@ features: [Temporal] const calendar = "IsO8601"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = Temporal.PlainYearMonth.from(arg); -TemporalHelpers.assertPlainYearMonth(result1, 2019, 6, "M06", "Calendar is case-insensitive"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = Temporal.PlainYearMonth.from(arg); -TemporalHelpers.assertPlainYearMonth(result2, 2019, 6, "M06", "Calendar is case-insensitive (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = Temporal.PlainYearMonth.from(arg); +TemporalHelpers.assertPlainYearMonth(result, 2019, 6, "M06", "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 764b31665c..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth.from -description: > - A Temporal.Calendar instance passed to from() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 2019, monthCode: "M06", calendar }; -Temporal.PlainYearMonth.from(arg); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -Temporal.PlainYearMonth.from(arg); diff --git a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-leap-second.js index 34160a40db..105422ee94 100644 --- a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-leap-second.js @@ -10,18 +10,10 @@ features: [Temporal] const calendar = "2016-12-31T23:59:60"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = Temporal.PlainYearMonth.from(arg); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = Temporal.PlainYearMonth.from(arg); TemporalHelpers.assertPlainYearMonth( - result1, + result, 2019, 6, "M06", "leap second is a valid ISO string for calendar" ); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = Temporal.PlainYearMonth.from(arg); -TemporalHelpers.assertPlainYearMonth( - result2, - 2019, 6, "M06", - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-number.js index ecead4225c..be415abf44 100644 --- a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-number.js @@ -10,13 +10,9 @@ features: [Temporal] const calendar = 19970327; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = Temporal.PlainYearMonth.from(arg); -TemporalHelpers.assertPlainYearMonth(result1, 2019, 6, "M06", "19970327 is a valid ISO string for calendar"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = Temporal.PlainYearMonth.from(arg); -TemporalHelpers.assertPlainYearMonth(result2, 2019, 6, "M06", "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = Temporal.PlainYearMonth.from(arg); +TemporalHelpers.assertPlainYearMonth(result, 2019, 6, "M06", "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -25,16 +21,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 2019, monthCode: "M06", calendar }; + const arg = { year: 2019, monthCode: "M06", calendar }; assert.throws( RangeError, () => Temporal.PlainYearMonth.from(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.PlainYearMonth.from(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-wrong-type.js index 0419e3c421..7d67ec74c0 100644 --- a/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainYearMonth/from/argument-propertybag-calendar-wrong-type.js @@ -18,11 +18,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.PlainYearMonth.from(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.PlainYearMonth.from(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -33,12 +30,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.PlainYearMonth.from(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.PlainYearMonth.from(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.PlainYearMonth.from(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainYearMonth/from/order-of-operations.js b/test/built-ins/Temporal/PlainYearMonth/from/order-of-operations.js index 2ae9926967..158ff5aaac 100644 --- a/test/built-ins/Temporal/PlainYearMonth/from/order-of-operations.js +++ b/test/built-ins/Temporal/PlainYearMonth/from/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // GetTemporalCalendarWithISODefault "get fields.calendar", - "has fields.calendar.calendar", // CalendarFields "get fields.calendar.fields", "call fields.calendar.fields", diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-case-insensitive.js index ccfa48c260..2d7bedf2f3 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "IsO8601"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index e8c4790ca5..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth.prototype.equals -description: > - A Temporal.Calendar instance passed to equals() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainYearMonth(2019, 6); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 2019, monthCode: "M06", calendar }; -instance.equals(arg); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -instance.equals(arg); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-leap-second.js index 3d446c7789..9ede1f97a8 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.equals(arg); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.equals(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-number.js index cd1ea7b30d..4e979abcd2 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = 19970327; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 2019, monthCode: "M06", calendar }; + const arg = { year: 2019, monthCode: "M06", calendar }; assert.throws( RangeError, () => instance.equals(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.equals(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-wrong-type.js index 137b9ffdbe..7214612b12 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/equals/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.equals(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-case-insensitive.js index 0c0d6dbcf4..b290e51b50 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "IsO8601"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 629dd814b7..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth.prototype.since -description: > - A Temporal.Calendar instance passed to since() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainYearMonth(2019, 6); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 2019, monthCode: "M06", calendar }; -instance.since(arg); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -instance.since(arg); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-leap-second.js index 9a276a1a4c..523035719b 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.since(arg); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.since(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-number.js index ab573e785a..97c87fc7e2 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = 19970327; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 2019, monthCode: "M06", calendar }; + const arg = { year: 2019, monthCode: "M06", calendar }; assert.throws( RangeError, () => instance.since(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.since(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-wrong-type.js index da4a19a8bf..2a7a85dbed 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/since/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.since(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/since/order-of-operations.js b/test/built-ins/Temporal/PlainYearMonth/prototype/since/order-of-operations.js index 917b104137..7fa21b8732 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/since/order-of-operations.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/since/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalYearMonth "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.month", diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-case-insensitive.js index bb96364415..a708ef9313 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "IsO8601"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index b87a98c3f6..0000000000 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.plainyearmonth.prototype.until -description: > - A Temporal.Calendar instance passed to until() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.PlainYearMonth(2019, 6); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 2019, monthCode: "M06", calendar }; -instance.until(arg); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -instance.until(arg); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-leap-second.js index 883d319460..91ec88efc6 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.until(arg); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.until(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-number.js index 2dedd8fe55..2ee4920af0 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.PlainYearMonth(2019, 6); const calendar = 19970327; -let arg = { year: 2019, monthCode: "M06", calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 2019, monthCode: "M06", calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 2019, monthCode: "M06", calendar }; + const arg = { year: 2019, monthCode: "M06", calendar }; assert.throws( RangeError, () => instance.until(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 2019, monthCode: "M06", calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.until(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-wrong-type.js index 18a4d80265..d0a69dd11c 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/until/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.until(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/PlainYearMonth/prototype/until/order-of-operations.js b/test/built-ins/Temporal/PlainYearMonth/prototype/until/order-of-operations.js index 9f65ee6a57..5ad27b5911 100644 --- a/test/built-ins/Temporal/PlainYearMonth/prototype/until/order-of-operations.js +++ b/test/built-ins/Temporal/PlainYearMonth/prototype/until/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalYearMonth "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.month", diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-case-insensitive.js index 40aa37fe51..ec10e72319 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getInstantFor(arg); -assert.sameValue(result1.epochNanoseconds, 217_123_200_000_000_000n, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getInstantFor(arg); -assert.sameValue(result2.epochNanoseconds, 217_123_200_000_000_000n, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getInstantFor(arg); +assert.sameValue(result.epochNanoseconds, 217_123_200_000_000_000n, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 8df2107ee8..0000000000 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.timezone.prototype.getinstantfor -description: > - A Temporal.Calendar instance passed to getInstantFor() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.TimeZone("UTC"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.getInstantFor(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.getInstantFor(arg); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-leap-second.js index 0e9d07bfb7..5701e25195 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getInstantFor(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getInstantFor(arg); assert.sameValue( - result1.epochNanoseconds, + result.epochNanoseconds, 217_123_200_000_000_000n, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getInstantFor(arg); -assert.sameValue( - result2.epochNanoseconds, - 217_123_200_000_000_000n, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-number.js index 2d14c50ee3..1de1dca472 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getInstantFor(arg); -assert.sameValue(result1.epochNanoseconds, 217_123_200_000_000_000n, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getInstantFor(arg); -assert.sameValue(result2.epochNanoseconds, 217_123_200_000_000_000n, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getInstantFor(arg); +assert.sameValue(result.epochNanoseconds, 217_123_200_000_000_000n, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.getInstantFor(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.getInstantFor(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-wrong-type.js index 576a7ff93c..aed207a98b 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.getInstantFor(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.getInstantFor(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.getInstantFor(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.getInstantFor(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.getInstantFor(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/order-of-operations.js b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/order-of-operations.js index a4318a880f..9dea3ed0b0 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/order-of-operations.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getInstantFor/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // GetTemporalCalendarWithISODefault "get fields.calendar", - "has fields.calendar.calendar", // CalendarFields "get fields.calendar.fields", "call fields.calendar.fields", diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 6d6341a29e..0000000000 --- a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.timezone.prototype.getplaindatetimefor -description: > - A Temporal.Calendar instance passed to getPlainDateTimeFor() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.TimeZone("UTC"); - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg); -instance.getPlainDateTimeFor(new Temporal.Instant(0n), { calendar: arg }); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-string-leap-second.js b/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-string-leap-second.js index 9a228c6ec1..efd79853de 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-string-leap-second.js @@ -9,18 +9,10 @@ features: [Temporal] const instance = new Temporal.TimeZone("UTC"); -let arg = "2016-12-31T23:59:60"; -const result1 = instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg); +const arg = "2016-12-31T23:59:60"; +const result = instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-wrong-type.js b/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-wrong-type.js index 8c85e4e5d6..8ebd2df733 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-wrong-type.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPlainDateTimeFor/calendar-wrong-type.js @@ -22,7 +22,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => instance.getPlainDateTimeFor(new Temporal.Instant(0n), { calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -31,5 +30,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => instance.getPlainDateTimeFor(new Temporal.Instant(0n), arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => instance.getPlainDateTimeFor(new Temporal.Instant(0n), { calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-case-insensitive.js index 51f74363b3..9c2c3cf78e 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getPossibleInstantsFor(arg); -assert.compareArray(result1.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getPossibleInstantsFor(arg); -assert.compareArray(result2.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getPossibleInstantsFor(arg); +assert.compareArray(result.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index b0f380a15b..0000000000 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.timezone.prototype.getpossibleinstantsfor -description: > - A Temporal.Calendar instance passed to getPossibleInstantsFor() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.TimeZone("UTC"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.getPossibleInstantsFor(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.getPossibleInstantsFor(arg); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-leap-second.js index 39b5d7ee9e..84de55acbc 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getPossibleInstantsFor(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getPossibleInstantsFor(arg); assert.compareArray( - result1.map(i => i.epochNanoseconds), + result.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getPossibleInstantsFor(arg); -assert.compareArray( - result2.map(i => i.epochNanoseconds), - [217_123_200_000_000_000n], - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-number.js index bee5a08198..9e2821f5cd 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.TimeZone("UTC"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.getPossibleInstantsFor(arg); -assert.compareArray(result1.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.getPossibleInstantsFor(arg); -assert.compareArray(result2.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.getPossibleInstantsFor(arg); +assert.compareArray(result.map(i => i.epochNanoseconds), [217_123_200_000_000_000n], "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.getPossibleInstantsFor(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.getPossibleInstantsFor(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-wrong-type.js index dd2a88d76e..70cb81b475 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.getPossibleInstantsFor(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.getPossibleInstantsFor(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.getPossibleInstantsFor(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.getPossibleInstantsFor(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.getPossibleInstantsFor(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/ZonedDateTime/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 59cb9786ac..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime -description: > - A Temporal.Calendar instance passed to new ZonedDateTime() does not have - its 'calendar' property observably checked -features: [Temporal] ----*/ - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -new Temporal.ZonedDateTime(0n, "UTC", arg); -new Temporal.ZonedDateTime(0n, "UTC", { calendar: arg }); diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-case-insensitive.js index bae1a5f2fb..986ede0cbc 100644 --- a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-case-insensitive.js @@ -12,14 +12,8 @@ const calendar = "IsO8601"; const timeZone = new Temporal.TimeZone("UTC"); const datetime = new Temporal.ZonedDateTime(0n, timeZone); -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; const result1 = Temporal.ZonedDateTime.compare(arg, datetime); assert.sameValue(result1, 0, "Calendar is case-insensitive (first argument)"); const result2 = Temporal.ZonedDateTime.compare(datetime, arg); assert.sameValue(result2, 0, "Calendar is case-insensitive (second argument)"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result3 = Temporal.ZonedDateTime.compare(arg, datetime); -assert.sameValue(result3, 0, "Calendar is case-insensitive (nested property, first argument)"); -const result4 = Temporal.ZonedDateTime.compare(datetime, arg); -assert.sameValue(result4, 0, "Calendar is case-insensitive (nested property, second argument)"); diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 46e70fa546..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.compare -description: > - A Temporal.Calendar instance passed to compare() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const timeZone = new Temporal.TimeZone("UTC"); -const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -Temporal.ZonedDateTime.compare(arg, arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-leap-second.js index 8a6c34e0b8..0bf607c323 100644 --- a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-leap-second.js @@ -11,14 +11,8 @@ const timeZone = new Temporal.TimeZone("UTC"); const datetime = new Temporal.ZonedDateTime(217_123_200_000_000_000n, timeZone); const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1976, monthCode: "M11", day: 18, timeZone, calendar }; +const arg = { year: 1976, monthCode: "M11", day: 18, timeZone, calendar }; const result1 = Temporal.ZonedDateTime.compare(arg, datetime); assert.sameValue(result1, 0, "leap second is a valid ISO string for calendar (first argument)"); const result2 = Temporal.ZonedDateTime.compare(datetime, arg); assert.sameValue(result2, 0, "leap second is a valid ISO string for calendar (second argument)"); - -arg = { year: 1976, monthCode: "M11", day: 18, timeZone, calendar: { calendar } }; -const result3 = Temporal.ZonedDateTime.compare(arg, datetime); -assert.sameValue(result3, 0, "leap second is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.ZonedDateTime.compare(datetime, arg); -assert.sameValue(result4, 0, "leap second is a valid ISO string for calendar (nested property, second argument)"); diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-number.js index e753410243..50cc9b4cb6 100644 --- a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-number.js @@ -12,18 +12,12 @@ const calendar = 19970327; const timeZone = new Temporal.TimeZone("UTC"); const datetime = new Temporal.ZonedDateTime(0n, timeZone); -let arg = { year: 1970, monthCode: "M01", day: 1, calendar, timeZone }; +const arg = { year: 1970, monthCode: "M01", day: 1, calendar, timeZone }; const result1 = Temporal.ZonedDateTime.compare(arg, datetime); assert.sameValue(result1, 0, "19970327 is a valid ISO string for calendar (first argument)"); const result2 = Temporal.ZonedDateTime.compare(datetime, arg); assert.sameValue(result2, 0, "19970327 is a valid ISO string for calendar (second argument)"); -arg = { year: 1970, monthCode: "M01", day: 1, calendar: { calendar }, timeZone }; -const result3 = Temporal.ZonedDateTime.compare(arg, datetime); -assert.sameValue(result3, 0, "19970327 is a valid ISO string for calendar (nested property, first argument)"); -const result4 = Temporal.ZonedDateTime.compare(datetime, arg); -assert.sameValue(result4, 0, "19970327 is a valid ISO string for calendar (nested property, second argument)"); - const numbers = [ 1, -19970327, @@ -31,7 +25,7 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1970, monthCode: "M01", day: 1, calendar, timeZone }; + const arg = { year: 1970, monthCode: "M01", day: 1, calendar, timeZone }; assert.throws( RangeError, () => Temporal.ZonedDateTime.compare(arg, datetime), @@ -42,15 +36,4 @@ for (const calendar of numbers) { () => Temporal.ZonedDateTime.compare(datetime, arg), `Number ${calendar} does not convert to a valid ISO string for calendar (second argument)` ); - arg = { year: 1970, monthCode: "M01", day: 1, calendar: { calendar }, timeZone }; - assert.throws( - RangeError, - () => Temporal.ZonedDateTime.compare(arg, datetime), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, first argument)` - ); - assert.throws( - RangeError, - () => Temporal.ZonedDateTime.compare(datetime, arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property, second argument)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-wrong-type.js index e226a10dda..9895596b94 100644 --- a/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/compare/argument-propertybag-calendar-wrong-type.js @@ -21,13 +21,9 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(arg, datetime), `${description} does not convert to a valid ISO string (first argument)`); assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(datetime, arg), `${description} does not convert to a valid ISO string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(arg, datetime), `${description} does not convert to a valid ISO string (nested property, first argument)`); - assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(datetime, arg), `${description} does not convert to a valid ISO string (nested property, second argument)`); } const typeErrorTests = [ @@ -38,15 +34,7 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.ZonedDateTime.compare(arg, datetime), `${description} is not a valid property bag and does not convert to a string (first argument)`); assert.throws(TypeError, () => Temporal.ZonedDateTime.compare(datetime, arg), `${description} is not a valid property bag and does not convert to a string (second argument)`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.ZonedDateTime.compare(arg, datetime), `${description} is not a valid property bag and does not convert to a string (nested property, first argument)`); - assert.throws(TypeError, () => Temporal.ZonedDateTime.compare(datetime, arg), `${description} is not a valid property bag and does not convert to a string (nested property, second argument)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(arg, datetime), `nested undefined calendar property is always a RangeError (first argument)`); -assert.throws(RangeError, () => Temporal.ZonedDateTime.compare(datetime, arg), `nested undefined calendar property is always a RangeError (second argument)`); diff --git a/test/built-ins/Temporal/ZonedDateTime/compare/order-of-operations.js b/test/built-ins/Temporal/ZonedDateTime/compare/order-of-operations.js index 80ac0e3e75..aa38edc774 100644 --- a/test/built-ins/Temporal/ZonedDateTime/compare/order-of-operations.js +++ b/test/built-ins/Temporal/ZonedDateTime/compare/order-of-operations.js @@ -10,7 +10,6 @@ features: [Temporal] const expected = [ "get one.calendar", - "has one.calendar.calendar", "get one.calendar.fields", "call one.calendar.fields", // PrepareTemporalFields @@ -58,7 +57,6 @@ const expected = [ "call one.timeZone.getOffsetNanosecondsFor", // Same set of operations, for the other argument: "get two.calendar", - "has two.calendar.calendar", "get two.calendar.fields", "call two.calendar.fields", // PrepareTemporalFields diff --git a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-case-insensitive.js index 841f912ea5..2efae5a2ba 100644 --- a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-case-insensitive.js @@ -10,10 +10,6 @@ features: [Temporal] const calendar = "IsO8601"; const timeZone = new Temporal.TimeZone("UTC"); -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = Temporal.ZonedDateTime.from(arg); -assert.sameValue(result1.calendarId, "iso8601", "Calendar is case-insensitive"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = Temporal.ZonedDateTime.from(arg); -assert.sameValue(result2.calendarId, "iso8601", "Calendar is case-insensitive (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = Temporal.ZonedDateTime.from(arg); +assert.sameValue(result.calendarId, "iso8601", "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 205bdabd99..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.from -description: > - A Temporal.Calendar instance passed to from() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -const timeZone = new Temporal.TimeZone("UTC"); -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -Temporal.ZonedDateTime.from(arg); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -Temporal.ZonedDateTime.from(arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-leap-second.js index 161b46e116..338a162ad5 100644 --- a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-leap-second.js @@ -10,18 +10,10 @@ features: [Temporal] const timeZone = new Temporal.TimeZone("UTC"); const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = Temporal.ZonedDateTime.from(arg); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = Temporal.ZonedDateTime.from(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for calendar" ); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = Temporal.ZonedDateTime.from(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-number.js index 6ebe6a7f3c..750cbeda5d 100644 --- a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-number.js @@ -10,13 +10,9 @@ features: [Temporal] const calendar = 19970327; const timeZone = new Temporal.TimeZone("UTC"); -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = Temporal.ZonedDateTime.from(arg); -assert.sameValue(result1.calendarId, "iso8601", "19970327 is a valid ISO string for calendar"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = Temporal.ZonedDateTime.from(arg); -assert.sameValue(result2.calendarId, "iso8601", "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = Temporal.ZonedDateTime.from(arg); +assert.sameValue(result.calendarId, "iso8601", "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -25,16 +21,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; + const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; assert.throws( RangeError, () => Temporal.ZonedDateTime.from(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; - assert.throws( - RangeError, - () => Temporal.ZonedDateTime.from(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-wrong-type.js index fc1dfa9604..a2f28eae44 100644 --- a/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-calendar-wrong-type.js @@ -18,11 +18,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => Temporal.ZonedDateTime.from(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => Temporal.ZonedDateTime.from(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -33,12 +30,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => Temporal.ZonedDateTime.from(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => Temporal.ZonedDateTime.from(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => Temporal.ZonedDateTime.from(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/ZonedDateTime/from/order-of-operations.js b/test/built-ins/Temporal/ZonedDateTime/from/order-of-operations.js index cc6181a1ed..da43817c08 100644 --- a/test/built-ins/Temporal/ZonedDateTime/from/order-of-operations.js +++ b/test/built-ins/Temporal/ZonedDateTime/from/order-of-operations.js @@ -10,7 +10,6 @@ features: [Temporal] const expected = [ "get item.calendar", - "has item.calendar.calendar", "get item.calendar.fields", "call item.calendar.fields", // PrepareTemporalFields diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js index d571f91a7c..b4f97b6629 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "IsO8601"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "Calendar is case-insensitive"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index fe60ee3e21..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.prototype.equals -description: > - A Temporal.Calendar instance passed to equals() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const timeZone = new Temporal.TimeZone("UTC"); -const instance = new Temporal.ZonedDateTime(0n, timeZone); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -instance.equals(arg); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -instance.equals(arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js index 8957994ea2..43fca0aa85 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.equals(arg); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.equals(arg); assert.sameValue( - result1, + result, true, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue( - result2, - true, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-number.js index d3419b97b8..7d1b55efd1 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = 19970327; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.equals(arg); -assert.sameValue(result1, true, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.equals(arg); -assert.sameValue(result2, true, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.equals(arg); +assert.sameValue(result, true, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; + const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; assert.throws( RangeError, () => instance.equals(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.equals(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js index 599ec149ac..77068d7b0b 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.equals(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.equals(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.equals(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/order-of-operations.js b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/order-of-operations.js index 7ba9951346..ff90d04f7a 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/equals/order-of-operations.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/equals/order-of-operations.js @@ -10,7 +10,6 @@ features: [Temporal] const expected = [ "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", // PrepareTemporalFields diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js index 5925793a6b..1d341ebc14 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-case-insensitive.js @@ -13,10 +13,6 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "IsO8601"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index f6f47c8293..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.prototype.since -description: > - A Temporal.Calendar instance passed to since() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const timeZone = new Temporal.TimeZone("UTC"); -const instance = new Temporal.ZonedDateTime(0n, timeZone); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -instance.since(arg); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -instance.since(arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-leap-second.js index a907504f4b..c2c39d97de 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-leap-second.js @@ -13,18 +13,10 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.since(arg); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.since(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-number.js index d99297f1a0..78d9c51616 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-number.js @@ -13,13 +13,9 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = 19970327; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.since(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.since(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.since(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -28,16 +24,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; + const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; assert.throws( RangeError, () => instance.since(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.since(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js index 2269c00245..a084aa6464 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/since/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.since(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.since(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.since(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/since/order-of-operations.js b/test/built-ins/Temporal/ZonedDateTime/prototype/since/order-of-operations.js index ae8d62c199..3221ea3547 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/since/order-of-operations.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/since/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalZonedDateTime "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js index 7d95519d22..c822b03b28 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-case-insensitive.js @@ -13,10 +13,6 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "IsO8601"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 092aa00352..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.prototype.until -description: > - A Temporal.Calendar instance passed to until() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const timeZone = new Temporal.TimeZone("UTC"); -const instance = new Temporal.ZonedDateTime(0n, timeZone); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -instance.until(arg); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -instance.until(arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-leap-second.js index df3b9989a8..3d98103d93 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-leap-second.js @@ -13,18 +13,10 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.until(arg); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.until(arg); TemporalHelpers.assertDuration( - result1, + result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration( - result2, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-number.js index 7db7eaa625..80f6fa3f5b 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-number.js @@ -13,13 +13,9 @@ const instance = new Temporal.ZonedDateTime(0n, timeZone); const calendar = 19970327; -let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; -const result1 = instance.until(arg); -TemporalHelpers.assertDuration(result1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; -const result2 = instance.until(arg); -TemporalHelpers.assertDuration(result2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; +const result = instance.until(arg); +TemporalHelpers.assertDuration(result, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -28,16 +24,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; + const arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar }; assert.throws( RangeError, () => instance.until(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1970, monthCode: "M01", day: 1, timeZone, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.until(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js index a2d75d18de..b6063cffe8 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/until/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.until(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.until(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.until(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/until/order-of-operations.js b/test/built-ins/Temporal/ZonedDateTime/prototype/until/order-of-operations.js index 1ec6566317..10a4038f3b 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/until/order-of-operations.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/until/order-of-operations.js @@ -11,7 +11,6 @@ features: [Temporal] const expected = [ // ToTemporalZonedDateTime "get other.calendar", - "has other.calendar.calendar", "get other.calendar.fields", "call other.calendar.fields", "get other.day", diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index aaa5083ddf..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.prototype.withcalendar -description: > - A Temporal.Calendar instance passed to withCalendar() does not have its - 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, "UTC", { id: "replace-me" }); - -const arg = new Temporal.Calendar("iso8601"); -Object.defineProperty(arg, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -instance.withCalendar(arg); -instance.withCalendar({ calendar: arg }); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-string-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-string-leap-second.js index 7597e4de38..8b45f2d65f 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-string-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-string-leap-second.js @@ -9,18 +9,10 @@ features: [Temporal] const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, "UTC", { id: "replace-me" }); -let arg = "2016-12-31T23:59:60"; -const result1 = instance.withCalendar(arg); +const arg = "2016-12-31T23:59:60"; +const result = instance.withCalendar(arg); assert.sameValue( - result1.calendarId, + result.calendarId, "iso8601", "leap second is a valid ISO string for Calendar" ); - -arg = { calendar: "2016-12-31T23:59:60" }; -const result2 = instance.withCalendar(arg); -assert.sameValue( - result2.calendarId, - "iso8601", - "leap second is a valid ISO string for Calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-wrong-type.js index ffd81eb7e7..b159f08d3a 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withCalendar/calendar-wrong-type.js @@ -22,7 +22,6 @@ const rangeErrorTests = [ for (const [arg, description] of rangeErrorTests) { assert.throws(RangeError, () => instance.withCalendar(arg), `${description} does not convert to a valid ISO string`); - assert.throws(RangeError, () => instance.withCalendar({ calendar: arg }), `${description} does not convert to a valid ISO string (in property bag)`); } const typeErrorTests = [ @@ -31,5 +30,4 @@ const typeErrorTests = [ for (const [arg, description] of typeErrorTests) { assert.throws(TypeError, () => instance.withCalendar(arg), `${description} is not a valid object and does not convert to a string`); - assert.throws(TypeError, () => instance.withCalendar({ calendar: arg }), `${description} is not a valid object and does not convert to a string (in property bag)`); } diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js index dc12a06470..1da159c22d 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-case-insensitive.js @@ -12,10 +12,6 @@ const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, timeZone const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); -assert.sameValue(result1.epochNanoseconds, 217_129_600_000_000_000n, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -assert.sameValue(result2.epochNanoseconds, 217_129_600_000_000_000n, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); +assert.sameValue(result.epochNanoseconds, 217_129_600_000_000_000n, "Calendar is case-insensitive"); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 82bae0ce0f..0000000000 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.zoneddatetime.prototype.withplaindate -description: > - A Temporal.Calendar instance passed to withPlainDate() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const timeZone = new Temporal.TimeZone("UTC"); -const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, timeZone); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.withPlainDate(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.withPlainDate(arg); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js index ebc5f7ce7f..4d034e16c5 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-leap-second.js @@ -12,18 +12,10 @@ const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, timeZone const calendar = "2016-12-31T23:59:60+00:00[UTC]"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); assert.sameValue( - result1.epochNanoseconds, + result.epochNanoseconds, 217_129_600_000_000_000n, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -assert.sameValue( - result2.epochNanoseconds, - 217_129_600_000_000_000n, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js index b5c7061ced..96d1f00749 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-number.js @@ -12,13 +12,9 @@ const instance = new Temporal.ZonedDateTime(1_000_000_000_000_000_000n, timeZone const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.withPlainDate(arg); -assert.sameValue(result1.epochNanoseconds, 217_129_600_000_000_000n, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.withPlainDate(arg); -assert.sameValue(result2.epochNanoseconds, 217_129_600_000_000_000n, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.withPlainDate(arg); +assert.sameValue(result.epochNanoseconds, 217_129_600_000_000_000n, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -27,16 +23,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.withPlainDate(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.withPlainDate(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js index 54ed639ee7..c6772c3de7 100644 --- a/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js +++ b/test/built-ins/Temporal/ZonedDateTime/prototype/withPlainDate/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.withPlainDate(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.withPlainDate(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.withPlainDate(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.withPlainDate(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.withPlainDate(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-case-insensitive.js b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-case-insensitive.js index e87641d327..790f6401ed 100644 --- a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-case-insensitive.js +++ b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.era(arg); -assert.sameValue(result1, undefined, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.era(arg); -assert.sameValue(result2, undefined, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.era(arg); +assert.sameValue(result, undefined, "Calendar is case-insensitive"); diff --git a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 2a05f17642..0000000000 --- a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.era -description: > - A Temporal.Calendar instance passed to era() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.era(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.era(arg); diff --git a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-leap-second.js b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-leap-second.js index 645159e747..97a5dd6298 100644 --- a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-leap-second.js +++ b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.era(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.era(arg); assert.sameValue( - result1, + result, undefined, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.era(arg); -assert.sameValue( - result2, - undefined, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-number.js b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-number.js index e355b70e95..348130bb03 100644 --- a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-number.js +++ b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.era(arg); -assert.sameValue(result1, undefined, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.era(arg); -assert.sameValue(result2, undefined, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.era(arg); +assert.sameValue(result, undefined, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.era(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.era(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-wrong-type.js b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-wrong-type.js index ef916fc9c6..7fffc7a0df 100644 --- a/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-wrong-type.js +++ b/test/intl402/Temporal/Calendar/prototype/era/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.era(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.era(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.era(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.era(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.era(arg), `nested undefined calendar property is always a RangeError`); diff --git a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-case-insensitive.js b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-case-insensitive.js index 48f60e1348..c25f3bf4ae 100644 --- a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-case-insensitive.js +++ b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-case-insensitive.js @@ -11,10 +11,6 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "IsO8601"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.eraYear(arg); -assert.sameValue(result1, undefined, "Calendar is case-insensitive"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.eraYear(arg); -assert.sameValue(result2, undefined, "Calendar is case-insensitive (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.eraYear(arg); +assert.sameValue(result, undefined, "Calendar is case-insensitive"); diff --git a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js deleted file mode 100644 index 39d5e343f2..0000000000 --- a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-instance-does-not-get-calendar-property.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2022 Igalia, S.L. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -esid: sec-temporal.calendar.prototype.erayear -description: > - A Temporal.Calendar instance passed to eraYear() in a property bag does - not have its 'calendar' property observably checked -features: [Temporal] ----*/ - -const instance = new Temporal.Calendar("iso8601"); - -const calendar = new Temporal.Calendar("iso8601"); -Object.defineProperty(calendar, "calendar", { - get() { - throw new Test262Error("calendar.calendar should not be accessed"); - }, -}); - -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -instance.eraYear(arg); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -instance.eraYear(arg); diff --git a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-leap-second.js b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-leap-second.js index 1a2e15215b..9f27c8d8da 100644 --- a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-leap-second.js +++ b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-leap-second.js @@ -11,18 +11,10 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = "2016-12-31T23:59:60"; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.eraYear(arg); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.eraYear(arg); assert.sameValue( - result1, + result, undefined, "leap second is a valid ISO string for calendar" ); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.eraYear(arg); -assert.sameValue( - result2, - undefined, - "leap second is a valid ISO string for calendar (nested property)" -); diff --git a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-number.js b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-number.js index e1640061d8..7ea80459f9 100644 --- a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-number.js +++ b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-number.js @@ -11,13 +11,9 @@ const instance = new Temporal.Calendar("iso8601"); const calendar = 19970327; -let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; -const result1 = instance.eraYear(arg); -assert.sameValue(result1, undefined, "19970327 is a valid ISO string for calendar"); - -arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; -const result2 = instance.eraYear(arg); -assert.sameValue(result2, undefined, "19970327 is a valid ISO string for calendar (nested property)"); +const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; +const result = instance.eraYear(arg); +assert.sameValue(result, undefined, "19970327 is a valid ISO string for calendar"); const numbers = [ 1, @@ -26,16 +22,10 @@ const numbers = [ ]; for (const calendar of numbers) { - let arg = { year: 1976, monthCode: "M11", day: 18, calendar }; + const arg = { year: 1976, monthCode: "M11", day: 18, calendar }; assert.throws( RangeError, () => instance.eraYear(arg), `Number ${calendar} does not convert to a valid ISO string for calendar` ); - arg = { year: 1976, monthCode: "M11", day: 18, calendar: { calendar } }; - assert.throws( - RangeError, - () => instance.eraYear(arg), - `Number ${calendar} does not convert to a valid ISO string for calendar (nested property)` - ); } diff --git a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-wrong-type.js b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-wrong-type.js index fe9969bb0c..2b8a0938f8 100644 --- a/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-wrong-type.js +++ b/test/intl402/Temporal/Calendar/prototype/eraYear/argument-propertybag-calendar-wrong-type.js @@ -21,11 +21,8 @@ const rangeErrorTests = [ ]; for (const [calendar, description] of rangeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(RangeError, () => instance.eraYear(arg), `${description} does not convert to a valid ISO string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(RangeError, () => instance.eraYear(arg), `${description} does not convert to a valid ISO string (nested property)`); } const typeErrorTests = [ @@ -36,12 +33,6 @@ const typeErrorTests = [ ]; for (const [calendar, description] of typeErrorTests) { - let arg = { year: 2019, monthCode: "M11", day: 1, calendar }; + const arg = { year: 2019, monthCode: "M11", day: 1, calendar }; assert.throws(TypeError, () => instance.eraYear(arg), `${description} is not a valid property bag and does not convert to a string`); - - arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar } }; - assert.throws(TypeError, () => instance.eraYear(arg), `${description} is not a valid property bag and does not convert to a string (nested property)`); } - -const arg = { year: 2019, monthCode: "M11", day: 1, calendar: { calendar: undefined } }; -assert.throws(RangeError, () => instance.eraYear(arg), `nested undefined calendar property is always a RangeError`);