From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../Intl402/Temporal/old/tzdb-transitions.js | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 js/src/tests/test262/staging/Intl402/Temporal/old/tzdb-transitions.js (limited to 'js/src/tests/test262/staging/Intl402/Temporal/old/tzdb-transitions.js') diff --git a/js/src/tests/test262/staging/Intl402/Temporal/old/tzdb-transitions.js b/js/src/tests/test262/staging/Intl402/Temporal/old/tzdb-transitions.js new file mode 100644 index 0000000000..52978e40fb --- /dev/null +++ b/js/src/tests/test262/staging/Intl402/Temporal/old/tzdb-transitions.js @@ -0,0 +1,47 @@ +// |reftest| skip-if(!this.hasOwnProperty('Temporal')) -- Temporal is not enabled unconditionally +// Copyright (C) 2018 Bloomberg LP. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-temporal-timezone-objects +description: Tests that are impractical to do without a TZDB +features: [Temporal] +---*/ + +// getNextTransition() + +var nyc = Temporal.TimeZone.from("America/New_York"); + +// should not have bug #510 +var a1 = Temporal.Instant.from("2019-04-16T21:01Z"); +var a2 = Temporal.Instant.from("1800-01-01T00:00Z"); +assert.sameValue(nyc.getNextTransition(a1).toString(), "2019-11-03T06:00:00Z"); +assert.sameValue(nyc.getNextTransition(a2).toString(), "1883-11-18T17:00:00Z"); + +// should not return the same as its input if the input is a transition point +var inst = Temporal.Instant.from("2019-01-01T00:00Z"); +assert.sameValue(`${ nyc.getNextTransition(inst) }`, "2019-03-10T07:00:00Z"); +assert.sameValue(`${ nyc.getNextTransition(nyc.getNextTransition(inst)) }`, "2019-11-03T06:00:00Z"); + +// casts argument +assert.sameValue(`${ nyc.getNextTransition("2019-04-16T21:01Z") }`, "2019-11-03T06:00:00Z"); + +// getPreviousTransition() + +var london = Temporal.TimeZone.from("Europe/London"); + +// should return first and last transition +var a1 = Temporal.Instant.from("2020-06-11T21:01Z"); +var a2 = Temporal.Instant.from("1848-01-01T00:00Z"); +assert.sameValue(london.getPreviousTransition(a1).toString(), "2020-03-29T01:00:00Z"); +assert.sameValue(london.getPreviousTransition(a2).toString(), "1847-12-01T00:01:15Z"); + +// should not return the same as its input if the input is a transition point +var inst = Temporal.Instant.from("2020-06-01T00:00Z"); +assert.sameValue(`${ london.getPreviousTransition(inst) }`, "2020-03-29T01:00:00Z"); +assert.sameValue(`${ london.getPreviousTransition(london.getPreviousTransition(inst)) }`, "2019-10-27T01:00:00Z"); + +// casts argument +assert.sameValue(`${ london.getPreviousTransition("2020-06-11T21:01Z") }`, "2020-03-29T01:00:00Z"); + +reportCompare(0, 0); -- cgit v1.2.3