| OLD | NEW |
| 1 library WebDBTest; | 1 library WebDBTest; |
| 2 import 'dart:async'; | 2 import 'dart:async'; |
| 3 import 'dart:html'; | 3 import 'dart:html'; |
| 4 import 'dart:web_sql'; | 4 import 'dart:web_sql'; |
| 5 import '../../pkg/unittest/lib/unittest.dart'; | 5 import '../../pkg/unittest/lib/unittest.dart'; |
| 6 import '../../pkg/unittest/lib/html_individual_config.dart'; | 6 import '../../pkg/unittest/lib/html_individual_config.dart'; |
| 7 | 7 |
| 8 void fail(message) { | 8 void fail(message) { |
| 9 guardAsync(() { | 9 guardAsync(() { |
| 10 expect(false, isTrue, reason: message); | 10 expect(false, isTrue, reason: message); |
| 11 }); | 11 }); |
| 12 } | 12 } |
| 13 | 13 |
| 14 Future<SqlTransaction> transaction(SqlDatabase db) { | 14 Future<SqlTransaction> transaction(SqlDatabase db) { |
| 15 final completer = new Completer<SqlTransaction>(); | 15 final completer = new Completer<SqlTransaction>.sync(); |
| 16 | 16 |
| 17 db.transaction((SqlTransaction transaction) { | 17 db.transaction((SqlTransaction transaction) { |
| 18 completer.complete(transaction); | 18 completer.complete(transaction); |
| 19 }, (SqlError error) { | 19 }, (SqlError error) { |
| 20 completer.completeError(error); | 20 completer.completeError(error); |
| 21 }); | 21 }); |
| 22 | 22 |
| 23 return completer.future; | 23 return completer.future; |
| 24 } | 24 } |
| 25 | 25 |
| 26 Future<SqlResultSet> createTable(SqlTransaction transaction, String tableName, | 26 Future<SqlResultSet> createTable(SqlTransaction transaction, String tableName, |
| 27 String columnName) { | 27 String columnName) { |
| 28 final completer = new Completer<SqlResultSet>(); | 28 final completer = new Completer<SqlResultSet>.sync(); |
| 29 | 29 |
| 30 final sql = 'CREATE TABLE $tableName ($columnName)'; | 30 final sql = 'CREATE TABLE $tableName ($columnName)'; |
| 31 transaction.executeSql(sql, [], | 31 transaction.executeSql(sql, [], |
| 32 (SqlTransaction tx, SqlResultSet rs) { | 32 (SqlTransaction tx, SqlResultSet rs) { |
| 33 completer.complete(rs); | 33 completer.complete(rs); |
| 34 }, | 34 }, |
| 35 (SqlTransaction tx, SqlError error) { | 35 (SqlTransaction tx, SqlError error) { |
| 36 completer.completeError(error); | 36 completer.completeError(error); |
| 37 }); | 37 }); |
| 38 | 38 |
| 39 return completer.future; | 39 return completer.future; |
| 40 } | 40 } |
| 41 | 41 |
| 42 Future<SqlResultSet> insert(SqlTransaction transaction, String tableName, | 42 Future<SqlResultSet> insert(SqlTransaction transaction, String tableName, |
| 43 String columnName, value) { | 43 String columnName, value) { |
| 44 final completer = new Completer<SqlResultSet>(); | 44 final completer = new Completer<SqlResultSet>.sync(); |
| 45 | 45 |
| 46 final sql = 'INSERT INTO $tableName ($columnName) VALUES (?)'; | 46 final sql = 'INSERT INTO $tableName ($columnName) VALUES (?)'; |
| 47 transaction.executeSql(sql, [value], | 47 transaction.executeSql(sql, [value], |
| 48 (SqlTransaction tx, SqlResultSet rs) { | 48 (SqlTransaction tx, SqlResultSet rs) { |
| 49 completer.complete(rs); | 49 completer.complete(rs); |
| 50 }, | 50 }, |
| 51 (SqlTransaction tx, SqlError error) { | 51 (SqlTransaction tx, SqlError error) { |
| 52 completer.completeError(error); | 52 completer.completeError(error); |
| 53 }); | 53 }); |
| 54 | 54 |
| 55 return completer.future; | 55 return completer.future; |
| 56 } | 56 } |
| 57 | 57 |
| 58 Future<SqlResultSet> queryTable(SqlTransaction transaction, String tableName) { | 58 Future<SqlResultSet> queryTable(SqlTransaction transaction, String tableName) { |
| 59 final completer = new Completer<SqlResultSet>(); | 59 final completer = new Completer<SqlResultSet>.sync(); |
| 60 | 60 |
| 61 final sql = 'SELECT * FROM $tableName'; | 61 final sql = 'SELECT * FROM $tableName'; |
| 62 transaction.executeSql(sql, [], | 62 transaction.executeSql(sql, [], |
| 63 (SqlTransaction tx, SqlResultSet rs) { | 63 (SqlTransaction tx, SqlResultSet rs) { |
| 64 completer.complete(rs); | 64 completer.complete(rs); |
| 65 }, | 65 }, |
| 66 (SqlTransaction tx, SqlError error) { | 66 (SqlTransaction tx, SqlError error) { |
| 67 completer.completeError(error); | 67 completer.completeError(error); |
| 68 }); | 68 }); |
| 69 | 69 |
| 70 return completer.future; | 70 return completer.future; |
| 71 } | 71 } |
| 72 | 72 |
| 73 Future<SqlResultSet> dropTable(SqlTransaction transaction, String tableName, | 73 Future<SqlResultSet> dropTable(SqlTransaction transaction, String tableName, |
| 74 [bool ignoreFailure = false]) { | 74 [bool ignoreFailure = false]) { |
| 75 final completer = new Completer<SqlResultSet>(); | 75 final completer = new Completer<SqlResultSet>.sync(); |
| 76 | 76 |
| 77 final sql = 'DROP TABLE $tableName'; | 77 final sql = 'DROP TABLE $tableName'; |
| 78 transaction.executeSql(sql, [], | 78 transaction.executeSql(sql, [], |
| 79 (SqlTransaction tx, SqlResultSet rs) { | 79 (SqlTransaction tx, SqlResultSet rs) { |
| 80 completer.complete(rs); | 80 completer.complete(rs); |
| 81 }, | 81 }, |
| 82 (SqlTransaction tx, SqlError error) { | 82 (SqlTransaction tx, SqlError error) { |
| 83 if (ignoreFailure) { | 83 if (ignoreFailure) { |
| 84 completer.complete(null); | 84 completer.complete(null); |
| 85 } else { | 85 } else { |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 138 var row = resultSet.rows.item(0); | 138 var row = resultSet.rows.item(0); |
| 139 expect(row.containsKey(columnName), isTrue); | 139 expect(row.containsKey(columnName), isTrue); |
| 140 expect(row[columnName], 'Some text data'); | 140 expect(row[columnName], 'Some text data'); |
| 141 expect(resultSet.rows[0], row); | 141 expect(resultSet.rows[0], row); |
| 142 }).then((_) { | 142 }).then((_) { |
| 143 return dropTable(tx, tableName); | 143 return dropTable(tx, tableName); |
| 144 }); | 144 }); |
| 145 }); | 145 }); |
| 146 }); | 146 }); |
| 147 } | 147 } |
| OLD | NEW |