tor-browser

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

idbindex_getAll.any.js (2995B)


      1 // META: title=IndexedDB: Test IDBIndex.getAll
      2 // META: global=window,worker
      3 // META: script=resources/nested-cloning-common.js
      4 // META: script=resources/support.js
      5 // META: script=resources/support-get-all.js
      6 // META: script=resources/support-promises.js
      7 // META: timeout=long
      8 'use strict';
      9 
     10 
     11 index_get_all_values_test(
     12    /*storeName=*/ 'out-of-line', /*options=*/ {query: 'C'}, 'Single item get');
     13 
     14 index_get_all_values_test(
     15    /*storeName=*/ 'empty', /*options=*/ undefined, 'Empty object store');
     16 
     17 index_get_all_values_test(
     18    /*storeName=*/ 'out-of-line', /*options=*/ undefined, 'Get all');
     19 
     20 index_get_all_values_test(
     21    /*storeName=*/ 'generated', /*options=*/ undefined,
     22    'Get all with generated keys');
     23 
     24 index_get_all_values_test(
     25    /*storeName=*/ 'large-values', /*options=*/ undefined,
     26    'Get all with large values');
     27 
     28 index_get_all_values_test(
     29    /*storeName=*/ 'out-of-line', /*options=*/ {count: 10}, 'maxCount=10');
     30 
     31 index_get_all_values_test(
     32    /*storeName=*/ 'out-of-line',
     33    /*options=*/ {query: IDBKeyRange.bound('G', 'M')}, 'Get bound range');
     34 
     35 index_get_all_values_test(
     36    /*storeName=*/ 'out-of-line',
     37    /*options=*/ {query: IDBKeyRange.bound('G', 'M'), count: 3},
     38    'Get bound range with maxCount');
     39 
     40 index_get_all_values_test(
     41    /*storeName=*/ 'out-of-line', /*options=*/ {
     42      query:
     43          IDBKeyRange.bound('G', 'K', /*lowerOpen=*/ false, /*upperOpen=*/ true)
     44    },
     45    'Get upper excluded');
     46 
     47 index_get_all_values_test(
     48    /*storeName=*/ 'out-of-line', /*options=*/ {
     49      query:
     50          IDBKeyRange.bound('G', 'K', /*lowerOpen=*/ true, /*upperOpen=*/ false)
     51    },
     52    'Get lower excluded');
     53 
     54 index_get_all_values_test(
     55    /*storeName=*/ 'generated',
     56    /*options=*/ {query: IDBKeyRange.bound(4, 15), count: 3},
     57    'Get bound range (generated) with maxCount');
     58 
     59 index_get_all_values_test(
     60    /*storeName=*/ 'out-of-line', /*options=*/ {query: 'Doesn\'t exist'},
     61    'Non existent key');
     62 
     63 index_get_all_values_test(
     64    /*storeName=*/ 'out-of-line', /*options=*/ {count: 0}, 'maxCount=0');
     65 
     66 index_get_all_values_test(
     67    /*storeName=*/ 'out-of-line', /*options=*/ {count: 4294967295},
     68    'Max value count');
     69 
     70 index_get_all_values_test(
     71    /*storeName=*/ 'out-of-line',
     72    /*options=*/ {query: IDBKeyRange.upperBound('0')},
     73    'Query with empty range where  first key < upperBound');
     74 
     75 index_get_all_values_test(
     76    /*storeName=*/ 'out-of-line',
     77    /*options=*/ {query: IDBKeyRange.lowerBound('ZZ')},
     78    'Query with empty range where lowerBound < last key');
     79 
     80 index_get_all_values_test(
     81    /*storeName=*/ 'out-of-line-not-unique', /*options=*/ {query: 'first'},
     82    'Retrieve multiEntry key');
     83 
     84 index_get_all_values_test(
     85    /*storeName=*/ 'out-of-line-multi', /*options=*/ {query: 'vowel'},
     86    'Retrieve one key multiple values');
     87 
     88 get_all_with_invalid_keys_test(
     89    'getAll', /*storeName=*/ 'out-of-line', /*indexName=*/ 'test_idx',
     90    /*shouldUseDictionary=*/ false, 'Get all values with invalid query keys');