0955c0ca9e
Bug: Change-Id: Iee8198332fd94ef708eab1aa34867c5d68054c6a Reviewed-on: https://dart-review.googlesource.com/10420 Commit-Queue: Jakob Roland Andersen <jakobr@google.com> Reviewed-by: Florian Loitsch <floitsch@google.com>
42 lines
1.1 KiB
Dart
42 lines
1.1 KiB
Dart
// 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 transition_event_test;
|
|
|
|
import 'dart:html';
|
|
import 'dart:async';
|
|
|
|
import 'package:expect/minitest.dart';
|
|
|
|
Future testTransitionEnd() async {
|
|
var element = new DivElement();
|
|
document.body.append(element);
|
|
|
|
element.style.opacity = '0';
|
|
element.style.width = '100px';
|
|
element.style.height = '100px';
|
|
element.style.background = 'red';
|
|
element.style.transition = 'opacity .1s';
|
|
|
|
final done = new Completer();
|
|
|
|
new Timer(const Duration(milliseconds: 100), () {
|
|
element.onTransitionEnd.first.then((e) {
|
|
expect(e is TransitionEvent, isTrue);
|
|
expect(e.propertyName, 'opacity');
|
|
}).then(done.complete, onError: done.completeError);
|
|
|
|
element.style.opacity = '1';
|
|
});
|
|
|
|
await done.future;
|
|
}
|
|
|
|
main() async {
|
|
expect(CssStyleDeclaration.supportsTransitions, isTrue);
|
|
if (CssStyleDeclaration.supportsTransitions) {
|
|
await testTransitionEnd();
|
|
}
|
|
}
|