tor-browser

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

fractional-throws-rangeerror.js (1565B)


      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 description: Temporal.Duration throws a RangeError if any value is fractional
      7 esid: sec-temporal.duration
      8 features: [Temporal]
      9 ---*/
     10 
     11 const descriptions = [
     12  'years',
     13  'months',
     14  'weeks',
     15  'days',
     16  'hours',
     17  'minutes',
     18  'seconds',
     19  'milliseconds',
     20  'microseconds',
     21  'nanoseconds'
     22 ].map((time) => `Duration constructor throws RangeError with fractional value in the ${time} position`);
     23 
     24 assert.throws(RangeError, () => new Temporal.Duration(1.1), descriptions[0]);
     25 assert.throws(RangeError, () => new Temporal.Duration(0, 1.1), descriptions[1]);
     26 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 1.1), descriptions[2]);
     27 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 1.1), descriptions[3]);
     28 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 1.1), descriptions[4]);
     29 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 0, 1.1), descriptions[5]);
     30 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 0, 0, 1.1), descriptions[6]);
     31 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 0, 0, 0, 1.1), descriptions[7]);
     32 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 0, 0, 0, 0, 1.1), descriptions[8]);
     33 assert.throws(RangeError, () => new Temporal.Duration(0, 0, 0, 0, 0, 0, 0, 0, 0, 1.1), descriptions[9]);
     34 
     35 reportCompare(0, 0);