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

Side by Side Diff: pkg/polymer/test/instance_attrs_test.dart

Issue 27903006: Improves how to initialize polymer apps and fixes polymer build and linter to (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 4
5 import 'dart:html'; 5 import 'dart:html';
6 import 'package:unittest/unittest.dart'; 6 import 'package:unittest/unittest.dart';
7 import 'package:unittest/html_config.dart'; 7 import 'package:unittest/html_config.dart';
8 import 'package:polymer/polymer.dart'; 8 import 'package:polymer/polymer.dart';
9 9
10 // Note: we use @CustomTag to make this type reflectable. 10 // Note: we use @CustomTag to make this type reflectable.
11 @CustomTag('my-element') 11 @CustomTag('my-element')
12 class MyElement extends PolymerElement { 12 class MyElement extends PolymerElement {
13 MyElement.created() : super.created(); 13 MyElement.created() : super.created();
14 14
15 // This is here so that [attributes] can be read via mirrors in polymer 15 // This is here so that [attributes] can be read via mirrors in polymer
16 // expressions (@CustomTag in this class makes the attribute reflectable). 16 // expressions (@CustomTag in this class makes the attribute reflectable).
17 get attributes => super.attributes; 17 get attributes => super.attributes;
18 } 18 }
19 19
20 @initMethod _main() { 20 main() {
21 initPolymer();
21 useHtmlConfiguration(); 22 useHtmlConfiguration();
22 23
23 test('attributes were deserialized', () { 24 test('attributes were deserialized', () {
24 var elem = query('my-element'); 25 var elem = query('my-element');
25 26
26 expect(elem.attributes, {'foo': '123', 'bar': 'hi', 'baz': 'world'}, 27 expect(elem.attributes, {'foo': '123', 'bar': 'hi', 'baz': 'world'},
27 reason: 'attributes should be copied to instance'); 28 reason: 'attributes should be copied to instance');
28 29
29 var text = elem.shadowRoot.text; 30 var text = elem.shadowRoot.text;
30 // Collapse adjacent whitespace like a browser would: 31 // Collapse adjacent whitespace like a browser would:
31 text = text.replaceAll('\n', ' ').replaceAll(new RegExp(r'\s+'), ' '); 32 text = text.replaceAll('\n', ' ').replaceAll(new RegExp(r'\s+'), ' ');
32 33
33 expect(text, " foo: 123 bar: hi baz: world ", 34 expect(text, " foo: 123 bar: hi baz: world ",
34 reason: 'text should match expected HTML template'); 35 reason: 'text should match expected HTML template');
35 }); 36 });
36 } 37 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698