reading-autoincrement-store.any.js (1849B)
1 // META: global=window,dedicatedworker,sharedworker,serviceworker 2 // META: script=resources/support-promises.js 3 // META: script=resources/reading-autoincrement-common.js 4 'use strict'; 5 6 promise_test(async testCase => { 7 const database = await setupAutoincrementDatabase(testCase); 8 9 const transaction = database.transaction(['store'], 'readonly'); 10 const store = transaction.objectStore('store'); 11 const request = store.getAll(); 12 const result = await promiseForRequest(testCase, request); 13 assert_equals(result.length, 32); 14 for (let i = 1; i <= 32; ++i) { 15 assert_equals(result[i - 1].id, i, 'Autoincrement key'); 16 assert_equals(result[i - 1].name, nameForId(i), 'String property'); 17 } 18 19 database.close(); 20 }, 'IDBObjectStore.getAll() for an autoincrement store'); 21 22 promise_test(async testCase => { 23 const database = await setupAutoincrementDatabase(testCase); 24 25 const transaction = database.transaction(['store'], 'readonly'); 26 const store = transaction.objectStore('store'); 27 const request = store.getAllKeys(); 28 const result = await promiseForRequest(testCase, request); 29 assert_equals(result.length, 32); 30 for (let i = 1; i <= 32; ++i) 31 assert_equals(result[i - 1], i, 'Autoincrement key'); 32 33 database.close(); 34 }, 'IDBObjectStore.getAllKeys() for an autoincrement store'); 35 36 promise_test(async testCase => { 37 const database = await setupAutoincrementDatabase(testCase); 38 39 const transaction = database.transaction(['store'], 'readonly'); 40 const store = transaction.objectStore('store'); 41 42 for (let i = 1; i <= 32; ++i) { 43 const request = store.get(i); 44 const result = await promiseForRequest(testCase, request); 45 assert_equals(result.id, i, 'Autoincrement key'); 46 assert_equals(result.name, nameForId(i), 'String property'); 47 } 48 49 database.close(); 50 }, 'IDBObjectStore.get() for an autoincrement store');