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

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

Issue 11419300: Dartifying dart:html type names. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years 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
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:html'; 4 import 'dart:html' as html;
5 import 'dart:indexed_db' as idb;
5 6
6 const String DB_NAME = 'Test'; 7 const String DB_NAME = 'Test';
7 const String STORE_NAME = 'TEST'; 8 const String STORE_NAME = 'TEST';
8 const int VERSION = 1; 9 const int VERSION = 1;
9 10
10 testReadWrite(key, value, matcher, 11 testReadWrite(key, value, matcher,
11 [dbName = DB_NAME, 12 [dbName = DB_NAME,
12 storeName = STORE_NAME, 13 storeName = STORE_NAME,
13 version = VERSION]) => () { 14 version = VERSION]) => () {
14 var db; 15 var db;
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 transaction.on.error.add(fail); 56 transaction.on.error.add(fail);
56 }) 57 })
57 ); 58 );
58 request.on.error.add(fail); 59 request.on.error.add(fail);
59 } else { 60 } else {
60 step1(); 61 step1();
61 } 62 }
62 } 63 }
63 64
64 openDb(e) { 65 openDb(e) {
65 var request = window.indexedDB.open(dbName, version); 66 var request = html.window.indexedDB.open(dbName, version);
66 expect(request, isNotNull); 67 expect(request, isNotNull);
67 request.on.success.add(expectAsync1(initDb)); 68 request.on.success.add(expectAsync1(initDb));
68 request.on.error.add(fail); 69 request.on.error.add(fail);
69 if (request is IDBOpenDBRequest) { 70 if (request is idb.OpenDBRequest) {
70 // New upgrade protocol. Old API has no 'upgradeNeeded' and uses 71 // New upgrade protocol. Old API has no 'upgradeNeeded' and uses
71 // setVersion instead. This path take by FireFox 15, Chrome 24. 72 // setVersion instead. This path take by FireFox 15, Chrome 24.
72 request.on.upgradeNeeded.add((e) { 73 request.on.upgradeNeeded.add((e) {
73 guardAsync(() { 74 guardAsync(() {
74 createObjectStore(e.target.result); 75 createObjectStore(e.target.result);
75 }); 76 });
76 }); 77 });
77 } 78 }
78 } 79 }
79 80
80 // Delete any existing DB. 81 // Delete any existing DB.
81 var deleteRequest = window.indexedDB.deleteDatabase(dbName); 82 var deleteRequest = html.window.indexedDB.deleteDatabase(dbName);
82 deleteRequest.on.success.add(expectAsync1(openDb)); 83 deleteRequest.on.success.add(expectAsync1(openDb));
83 deleteRequest.on.error.add(fail); 84 deleteRequest.on.error.add(fail);
84 }; 85 };
85 86
86 testReadWriteTyped(key, value, matcher, 87 testReadWriteTyped(key, value, matcher,
87 [dbName = DB_NAME, 88 [dbName = DB_NAME,
88 storeName = STORE_NAME, 89 storeName = STORE_NAME,
89 version = VERSION]) => () { 90 version = VERSION]) => () {
90 IDBDatabase db; 91 idb.Database db;
91 92
92 fail(e) { 93 fail(e) {
93 guardAsync(() { 94 guardAsync(() {
94 throw new Exception('IndexedDB failure'); 95 throw new Exception('IndexedDB failure');
95 }); 96 });
96 } 97 }
97 98
98 createObjectStore(db) { 99 createObjectStore(db) {
99 IDBObjectStore store = db.createObjectStore(storeName); 100 idb.ObjectStore store = db.createObjectStore(storeName);
100 expect(store, isNotNull); 101 expect(store, isNotNull);
101 } 102 }
102 103
103 step2(e) { 104 step2(e) {
104 IDBTransaction transaction = db.transaction(storeName, 'readonly'); 105 idb.Transaction transaction = db.transaction(storeName, 'readonly');
105 IDBRequest request = transaction.objectStore(storeName).getObject(key); 106 idb.Request request = transaction.objectStore(storeName).getObject(key);
106 request.on.success.add(expectAsync1((e) { 107 request.on.success.add(expectAsync1((e) {
107 var object = e.target.result; 108 var object = e.target.result;
108 db.close(); 109 db.close();
109 expect(object, matcher); 110 expect(object, matcher);
110 })); 111 }));
111 request.on.error.add(fail); 112 request.on.error.add(fail);
112 } 113 }
113 114
114 step1() { 115 step1() {
115 IDBTransaction transaction = db.transaction([storeName], 'readwrite'); 116 idb.Transaction transaction = db.transaction([storeName], 'readwrite');
116 IDBRequest request = transaction.objectStore(storeName).put(value, key); 117 idb.Request request = transaction.objectStore(storeName).put(value, key);
117 request.on.success.add(expectAsync1(step2)); 118 request.on.success.add(expectAsync1(step2));
118 request.on.error.add(fail); 119 request.on.error.add(fail);
119 } 120 }
120 121
121 initDb(e) { 122 initDb(e) {
122 db = e.target.result; 123 db = e.target.result;
123 if (version != db.version) { 124 if (version != db.version) {
124 // Legacy 'setVersion' upgrade protocol. 125 // Legacy 'setVersion' upgrade protocol.
125 IDBRequest request = db.setVersion('$version'); 126 idb.Request request = db.setVersion('$version');
126 request.on.success.add( 127 request.on.success.add(
127 expectAsync1((e) { 128 expectAsync1((e) {
128 createObjectStore(db); 129 createObjectStore(db);
129 IDBTransaction transaction = e.target.result; 130 idb.Transaction transaction = e.target.result;
130 transaction.on.complete.add(expectAsync1((e) => step1())); 131 transaction.on.complete.add(expectAsync1((e) => step1()));
131 transaction.on.error.add(fail); 132 transaction.on.error.add(fail);
132 }) 133 })
133 ); 134 );
134 request.on.error.add(fail); 135 request.on.error.add(fail);
135 } else { 136 } else {
136 step1(); 137 step1();
137 } 138 }
138 } 139 }
139 140
140 openDb(e) { 141 openDb(e) {
141 IDBRequest request = window.indexedDB.open(dbName, version); 142 idb.Request request = html.window.indexedDB.open(dbName, version);
142 expect(request, isNotNull); 143 expect(request, isNotNull);
143 request.on.success.add(expectAsync1(initDb)); 144 request.on.success.add(expectAsync1(initDb));
144 request.on.error.add(fail); 145 request.on.error.add(fail);
145 if (request is IDBOpenDBRequest) { 146 if (request is idb.OpenDBRequest) {
146 // New upgrade protocol. Old API has no 'upgradeNeeded' and uses 147 // New upgrade protocol. Old API has no 'upgradeNeeded' and uses
147 // setVersion instead. 148 // setVersion instead.
148 request.on.upgradeNeeded.add((e) { 149 request.on.upgradeNeeded.add((e) {
149 guardAsync(() { 150 guardAsync(() {
150 createObjectStore(e.target.result); 151 createObjectStore(e.target.result);
151 }); 152 });
152 }); 153 });
153 } 154 }
154 } 155 }
155 156
156 // Delete any existing DB. 157 // Delete any existing DB.
157 IDBRequest deleteRequest = window.indexedDB.deleteDatabase(dbName); 158 idb.Request deleteRequest = html.window.indexedDB.deleteDatabase(dbName);
158 deleteRequest.on.success.add(expectAsync1(openDb)); 159 deleteRequest.on.success.add(expectAsync1(openDb));
159 deleteRequest.on.error.add(fail); 160 deleteRequest.on.error.add(fail);
160 }; 161 };
161 162
162 tests_dynamic() { 163 tests_dynamic() {
163 test('test1', testReadWrite(123, 'Hoot!', equals('Hoot!'))); 164 test('test1', testReadWrite(123, 'Hoot!', equals('Hoot!')));
164 test('test2', testReadWrite(123, 12345, equals(12345))); 165 test('test2', testReadWrite(123, 12345, equals(12345)));
165 test('test3', testReadWrite(123, [1, 2, 3], equals([1, 2, 3]))); 166 test('test3', testReadWrite(123, [1, 2, 3], equals([1, 2, 3])));
166 test('test4', testReadWrite(123, [2, 3, 4], equals([2, 3, 4]))); 167 test('test4', testReadWrite(123, [2, 3, 4], equals([2, 3, 4])));
167 } 168 }
168 169
169 tests_typed() { 170 tests_typed() {
170 test('test1', testReadWriteTyped(123, 'Hoot!', equals('Hoot!'))); 171 test('test1', testReadWriteTyped(123, 'Hoot!', equals('Hoot!')));
171 test('test2', testReadWriteTyped(123, 12345, equals(12345))); 172 test('test2', testReadWriteTyped(123, 12345, equals(12345)));
172 test('test3', testReadWriteTyped(123, [1, 2, 3], equals([1, 2, 3]))); 173 test('test3', testReadWriteTyped(123, [1, 2, 3], equals([1, 2, 3])));
173 test('test4', testReadWriteTyped(123, [2, 3, 4], equals([2, 3, 4]))); 174 test('test4', testReadWriteTyped(123, [2, 3, 4], equals([2, 3, 4])));
174 } 175 }
175 176
176 main() { 177 main() {
177 useHtmlConfiguration(); 178 useHtmlConfiguration();
178 179
179 tests_dynamic(); 180 tests_dynamic();
180 tests_typed(); 181 tests_typed();
181 } 182 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698