| Index: packages/polymer/test/entered_view_test.dart
|
| diff --git a/packages/polymer/test/entered_view_test.dart b/packages/polymer/test/entered_view_test.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ddbda4472c786d243056913fd712ff38418e5cf9
|
| --- /dev/null
|
| +++ b/packages/polymer/test/entered_view_test.dart
|
| @@ -0,0 +1,51 @@
|
| +// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +library polymer.test.entered_view_test;
|
| +
|
| +import 'dart:async';
|
| +import 'dart:html';
|
| +import 'package:polymer/polymer.dart';
|
| +import 'package:unittest/unittest.dart';
|
| +import 'package:unittest/html_config.dart';
|
| +
|
| +@reflectable
|
| +class XOuter extends PolymerElement {
|
| + @observable bool expand = false;
|
| +
|
| + XOuter.created() : super.created();
|
| +}
|
| +
|
| +@reflectable
|
| +class XInner extends PolymerElement {
|
| + int enteredCount = 0;
|
| +
|
| + XInner.created() : super.created();
|
| +
|
| + attached() {
|
| + enteredCount++;
|
| + super.attached();
|
| + }
|
| +}
|
| +
|
| +main() => initPolymer().then((zone) => zone.run(() {
|
| + useHtmlConfiguration();
|
| + Polymer.register('x-inner', XInner);
|
| + Polymer.register('x-outer', XOuter);
|
| +
|
| + setUp(() => Polymer.onReady);
|
| +
|
| + test('element created properly', () {
|
| + XOuter outer = querySelector('x-outer');
|
| + outer.expand = true;
|
| + return outer.onMutation(outer.shadowRoot).then((_) {
|
| + // Element upgrade is also using mutation observers. Wait another tick so
|
| + // it goes before we do.
|
| + return new Future(() {
|
| + XInner inner = outer.shadowRoot.querySelector('x-inner');
|
| + expect(inner.enteredCount, 1, reason: 'attached should be called');
|
| + });
|
| + });
|
| + });
|
| +}));
|
|
|