| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 @TestOn('browser') | 4 @TestOn('browser') |
| 5 library polymer.test.src.common.polymer_descriptor_test; | 5 library polymer.test.src.common.polymer_descriptor_test; |
| 6 | 6 |
| 7 import 'dart:js'; | 7 import 'dart:js'; |
| 8 import 'package:test/test.dart'; | 8 import 'package:test/test.dart'; |
| 9 import 'package:polymer/polymer.dart'; | 9 import 'package:polymer/polymer.dart'; |
| 10 import 'package:polymer/src/common/polymer_descriptor.dart'; | 10 import 'package:polymer/src/common/polymer_descriptor.dart'; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 50 var listeners = descriptor['listeners']; | 50 var listeners = descriptor['listeners']; |
| 51 expect(listeners['tap'], 'onTap'); | 51 expect(listeners['tap'], 'onTap'); |
| 52 expect(listeners['someId.tap'], 'onSomeIdTap'); | 52 expect(listeners['someId.tap'], 'onSomeIdTap'); |
| 53 | 53 |
| 54 expect(descriptor['ready'] is JsFunction, isTrue); | 54 expect(descriptor['ready'] is JsFunction, isTrue); |
| 55 expect(descriptor['attached'] is JsFunction, isTrue); | 55 expect(descriptor['attached'] is JsFunction, isTrue); |
| 56 expect(descriptor['detached'] is JsFunction, isTrue); | 56 expect(descriptor['detached'] is JsFunction, isTrue); |
| 57 expect(descriptor['handleSomeEvent'] is JsFunction, isTrue); | 57 expect(descriptor['handleSomeEvent'] is JsFunction, isTrue); |
| 58 expect(descriptor['myDoubleChanged'] is JsFunction, isTrue); | 58 expect(descriptor['myDoubleChanged'] is JsFunction, isTrue); |
| 59 expect(descriptor['myNumsCombined'] is JsFunction, isTrue); | 59 expect(descriptor['myNumsCombined'] is JsFunction, isTrue); |
| 60 |
| 61 expect(descriptor['behaviors'], isNotNull); |
| 62 expect(descriptor['behaviors'].length, 2); |
| 63 expect(descriptor['behaviors'][0], context['Foo']['BehaviorOne']); |
| 64 expect(descriptor['behaviors'][1], context['Foo']['BehaviorTwo']); |
| 60 }); | 65 }); |
| 61 } | 66 } |
| 62 | 67 |
| 68 @BehaviorProxy(const ['Foo', 'BehaviorOne']) |
| 69 class BehaviorOne {} |
| 70 |
| 71 @BehaviorProxy(const ['Foo', 'BehaviorTwo']) |
| 72 class BehaviorTwo {} |
| 73 |
| 63 @jsProxyReflectable | 74 @jsProxyReflectable |
| 64 class Test { | 75 class Test extends Object with BehaviorOne, BehaviorTwo { |
| 65 @property | 76 @property |
| 66 String myString; | 77 String myString; |
| 67 @Property(notify: true) | 78 @Property(notify: true) |
| 68 int myInt; | 79 int myInt; |
| 69 @Property(observer: 'myDoubleChanged') | 80 @Property(observer: 'myDoubleChanged') |
| 70 double myDouble; | 81 double myDouble; |
| 71 @Property(reflectToAttribute: true) | 82 @Property(reflectToAttribute: true) |
| 72 num myNum; | 83 num myNum; |
| 73 @property | 84 @property |
| 74 bool myBool; | 85 bool myBool; |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 128 expectEqual(actual, expected); | 139 expectEqual(actual, expected); |
| 129 } | 140 } |
| 130 | 141 |
| 131 void expectEqual(JsObject actual, Map expected) { | 142 void expectEqual(JsObject actual, Map expected) { |
| 132 expect(actual, isNotNull); | 143 expect(actual, isNotNull); |
| 133 var keys = context['Object'].callMethod('keys', [actual]); | 144 var keys = context['Object'].callMethod('keys', [actual]); |
| 134 for (var key in keys) { | 145 for (var key in keys) { |
| 135 expect(actual[key], equals(expected[key])); | 146 expect(actual[key], equals(expected[key])); |
| 136 } | 147 } |
| 137 } | 148 } |
| OLD | NEW |