Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: tests/html/indexeddb_2_test.dart

Issue 16958006: Added async_helper and fixed broken asynchronous test. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tests/async_helper.dart ('k') | tests/isolate/global_error_handler2_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 library IndexedDB1Test; 1 library IndexedDB1Test;
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' as idb; 6 import 'dart:indexed_db' as idb;
7 import 'dart:collection'; 7 import 'dart:collection';
8 import 'utils.dart'; 8 import 'utils.dart';
9 9
10 // Write and re-read Maps: simple Maps; Maps with DAGs; Maps with cycles. 10 // Write and re-read Maps: simple Maps; Maps with DAGs; Maps with cycles.
11 11
12 const String DB_NAME = 'Test2'; 12 const String DB_NAME = 'Test2';
13 const String STORE_NAME = 'TEST'; 13 const String STORE_NAME = 'TEST';
14 const int VERSION = 1; 14 const int VERSION = 1;
15 15
16 testReadWrite(key, value, check, 16 testReadWrite(key, value, check,
17 [dbName = DB_NAME, storeName = STORE_NAME, version = VERSION]) { 17 [dbName = DB_NAME, storeName = STORE_NAME, version = VERSION]) {
18 18
19 createObjectStore(e) { 19 createObjectStore(e) {
20 var store = e.target.result.createObjectStore(storeName); 20 var store = e.target.result.createObjectStore(storeName);
21 expect(store, isNotNull); 21 expect(store, isNotNull);
22 } 22 }
23 23
24 var db; 24 var db;
25 // Delete any existing DBs. 25 // Delete any existing DBs.
26 return html.window.indexedDB.deleteDatabase(dbName).then((_) { 26 return html.window.indexedDB.deleteDatabase(dbName).then(expectAsync1((_) {
27 return html.window.indexedDB.open(dbName, version: version, 27 return html.window.indexedDB.open(dbName, version: version,
28 onUpgradeNeeded: createObjectStore); 28 onUpgradeNeeded: createObjectStore);
29 }).then((result) { 29 })).then(expectAsync1((result) {
30 db = result; 30 db = result;
31 var transaction = db.transaction([storeName], 'readwrite'); 31 var transaction = db.transaction([storeName], 'readwrite');
32 transaction.objectStore(storeName).put(value, key); 32 transaction.objectStore(storeName).put(value, key);
33 33
34 return transaction.completed; 34 return transaction.completed;
35 }).then((db) { 35 })).then(expectAsync1((db) {
36 var transaction = db.transaction(storeName, 'readonly'); 36 var transaction = db.transaction(storeName, 'readonly');
37 return transaction.objectStore(storeName).getObject(key); 37 return transaction.objectStore(storeName).getObject(key);
38 }).then((object) { 38 })).then(expectAsync1((object) {
39 db.close(); 39 db.close();
40 check(value, object); 40 check(value, object);
41 }).catchError((e) { 41 })).catchError((e) {
42 if (db != null) { 42 if (db != null) {
43 db.close(); 43 db.close();
44 } 44 }
45 throw e; 45 throw e;
46 }); 46 });
47 } 47 }
48 48
49 List<String> get nonNativeListData { 49 List<String> get nonNativeListData {
50 var list = new List<String>(); 50 var list = new List<String>();
51 list.add("data"); 51 list.add("data");
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 go('test_cycle', obj3); 97 go('test_cycle', obj3);
98 go('test_simple_splay', obj4); 98 go('test_simple_splay', obj4);
99 go('const_array_1', const [const [1], const [2]]); 99 go('const_array_1', const [const [1], const [2]]);
100 go('const_array_dag', const [const [1], const [1]]); 100 go('const_array_dag', const [const [1], const [1]]);
101 go('array_deferred_copy', [1,2,3, obj3, obj3, 6]); 101 go('array_deferred_copy', [1,2,3, obj3, obj3, 6]);
102 go('array_deferred_copy_2', [1,2,3, [4, 5, obj3], [obj3, 6]]); 102 go('array_deferred_copy_2', [1,2,3, [4, 5, obj3], [obj3, 6]]);
103 go('cyclic_list', cyclic_list); 103 go('cyclic_list', cyclic_list);
104 go('non-native lists', nonNativeListData); 104 go('non-native lists', nonNativeListData);
105 } 105 }
106 } 106 }
OLDNEW
« no previous file with comments | « tests/async_helper.dart ('k') | tests/isolate/global_error_handler2_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698