tor-browser

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

basic.js (2855B)


      1 // |reftest| skip-if(!this.hasOwnProperty('Temporal')) -- Temporal is not enabled unconditionally
      2 // Copyright (C) 2022 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: Basic comparisons.
      8 features: [Temporal]
      9 ---*/
     10 
     11 const td1pos = new Temporal.Duration(0, 0, 0, 0, 5, 5, 5, 5, 5, 5);
     12 const td2pos = new Temporal.Duration(0, 0, 0, 0, 5, 4, 5, 5, 5, 5);
     13 const td1neg = new Temporal.Duration(0, 0, 0, 0, -5, -5, -5, -5, -5, -5);
     14 const td2neg = new Temporal.Duration(0, 0, 0, 0, -5, -4, -5, -5, -5, -5);
     15 assert.sameValue(Temporal.Duration.compare(td1pos, td1pos), 0,
     16  "time units: equal");
     17 assert.sameValue(Temporal.Duration.compare(td2pos, td1pos), -1,
     18  "time units: smaller/larger");
     19 assert.sameValue(Temporal.Duration.compare(td1pos, td2pos), 1,
     20  "time units: larger/smaller");
     21 assert.sameValue(Temporal.Duration.compare(td1neg, td1neg), 0,
     22  "time units: negative/negative equal");
     23 assert.sameValue(Temporal.Duration.compare(td2neg, td1neg), 1,
     24  "time units: negative/negative smaller/larger");
     25 assert.sameValue(Temporal.Duration.compare(td1neg, td2neg), -1,
     26  "time units: negative/negative larger/smaller");
     27 assert.sameValue(Temporal.Duration.compare(td1neg, td2pos), -1,
     28  "time units: negative/positive");
     29 assert.sameValue(Temporal.Duration.compare(td1pos, td2neg), 1,
     30  "time units: positive/negative");
     31 
     32 const dd1pos = new Temporal.Duration(5, 5, 5, 5, 5, 5, 5, 5, 5, 5);
     33 const dd2pos = new Temporal.Duration(5, 5, 5, 5, 5, 4, 5, 5, 5, 5);
     34 const dd1neg = new Temporal.Duration(-5, -5, -5, -5, -5, -5, -5, -5, -5, -5);
     35 const dd2neg = new Temporal.Duration(-5, -5, -5, -5, -5, -4, -5, -5, -5, -5);
     36 const relativeTo = Temporal.PlainDate.from("2017-01-01");
     37 assert.throws(RangeError, () => Temporal.Duration.compare(dd1pos, dd2pos),
     38  "date units: relativeTo is required");
     39 assert.sameValue(Temporal.Duration.compare(dd1pos, dd1pos, { relativeTo }), 0,
     40  "date units: equal");
     41 assert.sameValue(Temporal.Duration.compare(dd2pos, dd1pos, { relativeTo }), -1,
     42  "date units: smaller/larger");
     43 assert.sameValue(Temporal.Duration.compare(dd1pos, dd2pos, { relativeTo }), 1,
     44  "date units: larger/smaller");
     45 assert.sameValue(Temporal.Duration.compare(dd1neg, dd1neg, { relativeTo }), 0,
     46  "date units: negative/negative equal");
     47 assert.sameValue(Temporal.Duration.compare(dd2neg, dd1neg, { relativeTo }), 1,
     48  "date units: negative/negative smaller/larger");
     49 assert.sameValue(Temporal.Duration.compare(dd1neg, dd2neg, { relativeTo }), -1,
     50  "date units: negative/negative larger/smaller");
     51 assert.sameValue(Temporal.Duration.compare(dd1neg, dd2pos, { relativeTo }), -1,
     52  "date units: negative/positive");
     53 assert.sameValue(Temporal.Duration.compare(dd1pos, dd2neg, { relativeTo }), 1,
     54  "date units: positive/negative");
     55 
     56 reportCompare(0, 0);