tor-browser

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

relativeto-undefined-throw-on-calendar-units.js (1503B)


      1 // |reftest| skip-if(!this.hasOwnProperty('Temporal')) -- Temporal is not enabled unconditionally
      2 // Copyright (C) 2021 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.duration.compare
      7 description: >
      8    The relativeTo option is required when either Duration contains years,
      9    months, or weeks
     10 features: [Temporal]
     11 ---*/
     12 
     13 const oneYear = new Temporal.Duration(1);
     14 const oneMonth = new Temporal.Duration(0, 1);
     15 const oneWeek = new Temporal.Duration(0, 0, 1);
     16 const oneDay = new Temporal.Duration(0, 0, 0, 1);
     17 const twoDays = new Temporal.Duration(0, 0, 0, 2);
     18 
     19 assert.sameValue(Temporal.Duration.compare(oneDay, twoDays), -1, "days do not require relativeTo");
     20 
     21 assert.throws(RangeError, () => Temporal.Duration.compare(oneWeek, oneDay), "weeks in left operand require relativeTo");
     22 assert.throws(RangeError, () => Temporal.Duration.compare(oneDay, oneWeek), "weeks in right operand require relativeTo");
     23 
     24 assert.throws(RangeError, () => Temporal.Duration.compare(oneMonth, oneDay), "months in left operand require relativeTo");
     25 assert.throws(RangeError, () => Temporal.Duration.compare(oneDay, oneMonth), "months in right operand require relativeTo");
     26 
     27 assert.throws(RangeError, () => Temporal.Duration.compare(oneYear, oneDay), "years in left operand require relativeTo");
     28 assert.throws(RangeError, () => Temporal.Duration.compare(oneDay, oneYear), "years in right operand require relativeTo");
     29 
     30 reportCompare(0, 0);