| OLD | NEW |
| 1 library IndexedDB3Test; | 1 library IndexedDB3Test; |
| 2 import '../../pkg/unittest/lib/unittest.dart'; | 2 import '../../pkg/unittest/lib/unittest.dart'; |
| 3 import '../../pkg/unittest/lib/html_config.dart'; | 3 import '../../pkg/unittest/lib/html_config.dart'; |
| 4 import 'dart:async'; | 4 import 'dart:async'; |
| 5 import 'dart:html' as html; | 5 import 'dart:html' as html; |
| 6 import 'dart:indexed_db'; | 6 import 'dart:indexed_db'; |
| 7 | 7 |
| 8 // Read with cursor. | 8 // Read with cursor. |
| 9 | 9 |
| 10 const String DB_NAME = 'Test3'; | 10 const String DB_NAME = 'Test3'; |
| 11 const String STORE_NAME = 'TEST'; | 11 const String STORE_NAME = 'TEST'; |
| 12 const int VERSION = 1; | 12 const int VERSION = 1; |
| 13 | 13 |
| 14 | 14 |
| 15 Future<Database> createAndOpenDb() { | 15 Future<Database> createAndOpenDb() { |
| 16 return html.window.indexedDB.deleteDatabase(DB_NAME).then((_) { | 16 return html.window.indexedDB.deleteDatabase(DB_NAME).then((_) { |
| 17 return html.window.indexedDB.open(DB_NAME, version: VERSION, | 17 return html.window.indexedDB.open(DB_NAME, version: VERSION, |
| 18 onUpgradeNeeded: (e) { | 18 onUpgradeNeeded: (e) { |
| 19 var db = e.target.result; | 19 var db = e.target.result; |
| 20 db.createObjectStore(STORE_NAME); | 20 db.createObjectStore(STORE_NAME); |
| 21 }); | 21 }); |
| 22 }); | 22 }); |
| 23 } | 23 } |
| 24 | 24 |
| 25 Future<Database> writeItems(Database db) { | 25 Future<Database> writeItems(Database db) { |
| 26 Future<Object> write(index) { | 26 Future<Object> write(index) { |
| 27 var transaction = db.transaction([STORE_NAME], 'readwrite'); | 27 var transaction = db.transaction(STORE_NAME, 'readwrite'); |
| 28 return transaction.objectStore(STORE_NAME).put('Item $index', index); | 28 return transaction.objectStore(STORE_NAME).put('Item $index', index); |
| 29 } | 29 } |
| 30 | 30 |
| 31 var future = write(0); | 31 var future = write(0); |
| 32 for (var i = 1; i < 100; ++i) { | 32 for (var i = 1; i < 100; ++i) { |
| 33 future = future.then((_) => write(i)); | 33 future = future.then((_) => write(i)); |
| 34 } | 34 } |
| 35 | 35 |
| 36 // Chain on the DB so we return it at the end. | 36 // Chain on the DB so we return it at the end. |
| 37 return future.then((_) => db); | 37 return future.then((_) => db); |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 }); | 104 }); |
| 105 test('readAll1', () { | 105 test('readAll1', () { |
| 106 return readAllViaCursor(db); | 106 return readAllViaCursor(db); |
| 107 }); | 107 }); |
| 108 | 108 |
| 109 test('readAll2', () { | 109 test('readAll2', () { |
| 110 return readAllReversedViaCursor(db); | 110 return readAllReversedViaCursor(db); |
| 111 }); | 111 }); |
| 112 } | 112 } |
| 113 } | 113 } |
| OLD | NEW |