tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

observable-get-overflow-argument-primitive.js (1306B)


      1 // |reftest| skip-if(!this.hasOwnProperty('Temporal')) -- Temporal is not enabled unconditionally
      2 // Copyright (C) 2023 Igalia, S.L. All rights reserved.
      3 // This code is governed by the BSD license found in the LICENSE file.
      4 
      5 /*---
      6 esid: sec-temporal.plainmonthday.from
      7 description: overflow property is extracted with string argument.
      8 info: |
      9    1. Perform ? ToTemporalOverflow(_options_).
     10 includes: [compareArray.js, temporalHelpers.js]
     11 features: [Temporal]
     12 ---*/
     13 
     14 const expected = [
     15  "get options.overflow",
     16  "get options.overflow.toString",
     17  "call options.overflow.toString",
     18 ];
     19 
     20 let actual = [];
     21 const options = TemporalHelpers.propertyBagObserver(actual, { overflow: "reject" }, "options");
     22 
     23 const result = Temporal.PlainMonthDay.from("05-17", options);
     24 assert.compareArray(actual, expected, "Successful call");
     25 TemporalHelpers.assertPlainMonthDay(result, "M05", 17);
     26 
     27 actual.splice(0);  // empty it for the next check
     28 
     29 assert.throws(TypeError, () => Temporal.PlainMonthDay.from(7, options));
     30 assert.compareArray(actual, [], "Failing call before options is processed");
     31 
     32 actual.splice(0);
     33 
     34 assert.throws(RangeError, () => Temporal.PlainMonthDay.from({ monthCode: "M02", day: 30 }, options));
     35 assert.compareArray(actual, expected, "Failing call after options is processed");
     36 
     37 reportCompare(0, 0);