Chromium Code Reviews| Index: tests/dom/indexeddb_3_test.dart |
| =================================================================== |
| --- tests/dom/indexeddb_3_test.dart (revision 7823) |
| +++ tests/dom/indexeddb_3_test.dart (working copy) |
| @@ -16,7 +16,7 @@ |
| start() { |
| var request = window.webkitIndexedDB.open(DB_NAME); |
| Expect.isNotNull(request); |
| - request.addEventListener('success', initDb); |
| + request.addEventListener('success', expectAsync1(initDb)); |
| request.addEventListener('error', fail('open')); |
| } |
| @@ -26,14 +26,15 @@ |
| // open call and listening to onversionchange. Can we feature-detect the |
| // difference and make it work? |
| var request = db.setVersion(VERSION); |
| - request.addEventListener('success', (e) { |
| + request.addEventListener('success', |
| + expectAsync1((e) { |
| try { |
| // Nuke object store if it already exists. |
| db.deleteObjectStore(STORE_NAME); |
| } catch (IDBDatabaseException e) { } |
| db.createObjectStore(STORE_NAME); |
| writeItems(0); |
| - }); |
| + })); |
| request.addEventListener('blocked', fail('setVersion blocked')); |
| request.addEventListener('error', fail('setVersion error')); |
| } |
| @@ -43,16 +44,19 @@ |
| var transaction = db.transaction([STORE_NAME], IDBTransaction.READ_WRITE); |
| var request = transaction.objectStore(STORE_NAME) |
| .put('Item $index', index); |
| - request.addEventListener('success', (e) { writeItems(index + 1); }); |
| + request.addEventListener('success', |
| + expectAsync1((e) { |
| + writeItems(index + 1); |
| + }) |
| + ); |
| request.addEventListener('error', fail('put')); |
| - } else { |
| - callbackDone(); |
| } |
| } |
| fail(message) => (e) { |
| - callbackDone(); |
| - Expect.fail('IndexedDB failure: $message'); |
| + guardAsync(() { |
| + Expect.fail('IndexedDB failure: $message'); |
| + }); |
| }; |
| readAllViaCursor() { |
| @@ -62,7 +66,9 @@ |
| int itemCount = 0; |
| int sumKeys = 0; |
| int lastKey = null; |
| + var doneCallback = expectAsync0((){}); |
| cursorRequest.addEventListener("success", (e) { |
|
Siggi Cherem (dart-lang)
2012/05/21 22:20:47
this is one you could do without the 'doneCallback
gram
2012/05/22 17:36:36
Done.
|
| + guardAsync(() { |
| var cursor = e.target.result; |
| if (cursor != null) { |
| lastKey = cursor.key; |
| @@ -75,9 +81,10 @@ |
| Expect.equals(99, lastKey); |
| Expect.equals(100, itemCount); |
| Expect.equals((100 * 99) ~/ 2, sumKeys); |
| - callbackDone(); |
| + doneCallback(); |
| } |
| }); |
| + }); |
| cursorRequest.addEventListener('error', fail('openCursor')); |
| } |
| @@ -89,7 +96,9 @@ |
| int itemCount = 0; |
| int sumKeys = 0; |
| int lastKey = null; |
| + var doneCallback = expectAsync0((){}); |
| cursorRequest.addEventListener("success", (e) { |
|
Siggi Cherem (dart-lang)
2012/05/21 22:20:47
same here
gram
2012/05/22 17:36:36
Done.
|
| + guardAsync(() { |
| var cursor = e.target.result; |
| if (cursor != null) { |
| lastKey = cursor.key; |
| @@ -102,9 +111,10 @@ |
| Expect.equals(0, lastKey); // i.e. first key (scanned in reverse). |
| Expect.equals(100, itemCount); |
| Expect.equals((100 * 99) ~/ 2, sumKeys); |
| - callbackDone(); |
| + doneCallback(); |
| } |
| }); |
| + }); |
| cursorRequest.addEventListener('error', fail('openCursor')); |
| } |
| } |
| @@ -112,8 +122,8 @@ |
| main() { |
| useDomConfiguration(); |
| - var test = new Test(); |
| - asyncTest('prepare', 1, test.start); |
| - asyncTest('readAll1', 1, test.readAllViaCursor); |
| - asyncTest('readAll2', 1, test.readAllReversedViaCursor); |
| + var test_ = new Test(); |
| + test('prepare', test_.start); |
| + test('readAll1', test_.readAllViaCursor); |
| + test('readAll2', test_.readAllReversedViaCursor); |
| } |