tor-browser

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

idbkeyrange.any.js (4836B)


      1 // META: title=IDBKeyRange Tests
      2 // META: global=window,worker
      3 // META: script=resources/support.js
      4 
      5 'use strict';
      6 
      7 test(() => {
      8  const keyRange = IDBKeyRange.only(1);
      9  assert_true(
     10      keyRange instanceof IDBKeyRange, 'keyRange instanceof IDBKeyRange');
     11  assert_equals(keyRange.lower, 1, 'keyRange');
     12  assert_equals(keyRange.upper, 1, 'keyRange');
     13  assert_false(keyRange.lowerOpen, 'keyRange.lowerOpen');
     14  assert_false(keyRange.upperOpen, 'keyRange.upperOpen');
     15 }, 'IDBKeyRange.only() - returns an IDBKeyRange and the properties are set correctly');
     16 
     17 test(() => {
     18  assert_throws_dom('DataError', () => {
     19    IDBKeyRange.only(undefined);
     20  }, 'undefined is not a valid key');
     21  assert_throws_dom('DataError', () => {
     22    IDBKeyRange.only(null);
     23  }, 'null is not a valid key');
     24  assert_throws_dom('DataError', () => {
     25    IDBKeyRange.only({});
     26  }, 'Object is not a valid key');
     27  assert_throws_dom('DataError', () => {
     28    IDBKeyRange.only(Symbol());
     29  }, 'Symbol is not a valid key');
     30  assert_throws_dom('DataError', () => {
     31    IDBKeyRange.only(true);
     32  }, 'boolean is not a valid key');
     33  assert_throws_dom('DataError', () => {
     34    IDBKeyRange.only(() => {});
     35  }, 'function is not a valid key');
     36 }, 'IDBKeyRange.only() - throws on invalid keys');
     37 
     38 test(() => {
     39  const keyRange = IDBKeyRange.lowerBound(1, true);
     40  assert_true(
     41      keyRange instanceof IDBKeyRange, 'keyRange instanceof IDBKeyRange');
     42  assert_equals(keyRange.lower, 1, 'keyRange.lower');
     43  assert_equals(keyRange.upper, undefined, 'keyRange.upper');
     44  assert_true(keyRange.lowerOpen, 'keyRange.lowerOpen');
     45  assert_true(keyRange.upperOpen, 'keyRange.upperOpen');
     46 }, 'IDBKeyRange.lowerBound() - returns an IDBKeyRange and the properties are set correctly');
     47 
     48 test(() => {
     49  const keyRange = IDBKeyRange.lowerBound(1);
     50  assert_false(keyRange.lowerOpen, 'keyRange.lowerOpen');
     51 }, 'IDBKeyRange.lowerBound() - \'open\' parameter has correct default set');
     52 
     53 test(() => {
     54  assert_throws_dom('DataError', () => {
     55    IDBKeyRange.lowerBound(undefined);
     56  }, 'undefined is not a valid key');
     57  assert_throws_dom('DataError', () => {
     58    IDBKeyRange.lowerBound(null);
     59  }, 'null is not a valid key');
     60  assert_throws_dom('DataError', () => {
     61    IDBKeyRange.lowerBound({});
     62  }, 'Object is not a valid key');
     63  assert_throws_dom('DataError', () => {
     64    IDBKeyRange.lowerBound(Symbol());
     65  }, 'Symbol is not a valid key');
     66  assert_throws_dom('DataError', () => {
     67    IDBKeyRange.lowerBound(true);
     68  }, 'boolean is not a valid key');
     69  assert_throws_dom('DataError', () => {
     70    IDBKeyRange.lowerBound(() => {});
     71  }, 'function is not a valid key');
     72 }, 'IDBKeyRange.lowerBound() - throws on invalid keys');
     73 
     74 test(() => {
     75  const keyRange = IDBKeyRange.upperBound(1, true);
     76  assert_true(
     77      keyRange instanceof IDBKeyRange, 'keyRange instanceof IDBKeyRange');
     78  assert_equals(keyRange.lower, undefined, 'keyRange.lower');
     79  assert_equals(keyRange.upper, 1, 'keyRange.upper');
     80  assert_true(keyRange.lowerOpen, 'keyRange.lowerOpen');
     81  assert_true(keyRange.upperOpen, 'keyRange.upperOpen');
     82 }, 'IDBKeyRange.upperBound() - returns an IDBKeyRange and the properties are set correctly');
     83 
     84 test(() => {
     85  const keyRange = IDBKeyRange.upperBound(1);
     86  assert_false(keyRange.upperOpen, 'keyRange.upperOpen');
     87 }, 'IDBKeyRange.upperBound() - \'open\' parameter has correct default set');
     88 
     89 test(() => {
     90  assert_throws_dom('DataError', () => {
     91    IDBKeyRange.upperBound(undefined);
     92  }, 'undefined is not a valid key');
     93  assert_throws_dom('DataError', () => {
     94    IDBKeyRange.upperBound(null);
     95  }, 'null is not a valid key');
     96  assert_throws_dom('DataError', () => {
     97    IDBKeyRange.upperBound({});
     98  }, 'Object is not a valid key');
     99  assert_throws_dom('DataError', () => {
    100    IDBKeyRange.upperBound(Symbol());
    101  }, 'Symbol is not a valid key');
    102  assert_throws_dom('DataError', () => {
    103    IDBKeyRange.upperBound(true);
    104  }, 'boolean is not a valid key');
    105  assert_throws_dom('DataError', () => {
    106    IDBKeyRange.upperBound(() => {});
    107  }, 'function is not a valid key');
    108 }, 'IDBKeyRange.upperBound() - throws on invalid keys');
    109 
    110 test(() => {
    111  const keyRange = IDBKeyRange.bound(1, 2, true, true);
    112  assert_true(
    113      keyRange instanceof IDBKeyRange, 'keyRange instanceof IDBKeyRange');
    114  assert_equals(keyRange.lower, 1, 'keyRange');
    115  assert_equals(keyRange.upper, 2, 'keyRange');
    116  assert_true(keyRange.lowerOpen, 'keyRange.lowerOpen');
    117  assert_true(keyRange.upperOpen, 'keyRange.upperOpen');
    118 }, 'IDBKeyRange.bound() - returns an IDBKeyRange and the properties are set correctly');
    119 
    120 test(() => {
    121  const keyRange = IDBKeyRange.bound(1, 2);
    122  assert_false(keyRange.lowerOpen, 'keyRange.lowerOpen');
    123  assert_false(keyRange.upperOpen, 'keyRange.upperOpen');
    124 }, 'IDBKeyRange.bound() - \'lowerOpen\' and \'upperOpen\' parameters have correct defaults set');