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

Unified Diff: pkg/polymer_expressions/test/syntax_test.dart

Issue 24031006: Silently handle handle eval exceptions in PolymerExpressions (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: pkg/polymer_expressions/test/syntax_test.dart
diff --git a/pkg/polymer_expressions/test/syntax_test.dart b/pkg/polymer_expressions/test/syntax_test.dart
index 8e5b322326487c0bd2b4d1d37b27198b429e0bf6..6415740b010950dcc9f0a51ced35dccf1cd4b7ff 100644
--- a/pkg/polymer_expressions/test/syntax_test.dart
+++ b/pkg/polymer_expressions/test/syntax_test.dart
@@ -5,11 +5,12 @@
import 'dart:async';
import 'dart:html';
+import 'package:mdv/mdv.dart' as mdv;
+import 'package:logging/logging.dart';
+import 'package:observe/observe.dart';
import 'package:polymer_expressions/polymer_expressions.dart';
-import 'package:unittest/unittest.dart';
import 'package:unittest/html_enhanced_config.dart';
-import 'package:observe/observe.dart';
-import 'package:mdv/mdv.dart' as mdv;
+import 'package:unittest/unittest.dart';
main() {
mdv.initialize();
@@ -62,6 +63,23 @@ main() {
expect(testDiv.nodes.length, 1);
expect(testDiv.nodes[0].id, 'test');
});
+
+ test('should silently handle bad variable names', () {
+ var logFuture = Logger.root.onRecord.toList();
Jennifer Messerly 2013/09/18 18:52:27 hmmm, I think this should be scoped to polymer_exp
+ testDiv.nodes.add(new Element.html('''
+ <template id="test" bind>{{ foo }}</template>'''));
+ query('#test')
+ ..bindingDelegate = new PolymerExpressions()
+ ..model = null;
Jennifer Messerly 2013/09/18 18:52:27 fyi -- I don't think setting model to null is requ
justinfagnani 2013/09/18 21:56:29 Done.
+ return new Future(() => null).then((_) {
Jennifer Messerly 2013/09/18 18:52:27 confused by `new Future(() => null).then((_) {` ..
justinfagnani 2013/09/18 21:56:29 Done.
+ Logger.root.clearListeners();
+ return logFuture.then((records) {
+ expect(records.length, 1);
+ expect(records.first.message, contains('Error evaluating expression'));
Jennifer Messerly 2013/09/18 18:52:27 long line. records[0].message? :)
justinfagnani 2013/09/18 21:56:29 Done.
+ expect(records.first.message, contains('foo'));
+ });
+ });
+ });
});
}
« pkg/polymer_expressions/example/example.dart ('K') | « pkg/polymer_expressions/test/eval_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698