// Copyright (c) 2015, 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 element_animate_test; import 'dart:async'; import 'dart:html'; import 'package:unittest/html_individual_config.dart'; import 'package:unittest/unittest.dart'; main() { useHtmlIndividualConfiguration(); group('animate_supported', () { test('supported', () { expect(Animation.supported, isTrue); }); }); group('simple_timing', () { test('simple timing', () { var body = document.body; var opacity = num.parse(body.getComputedStyle().opacity); body.animate([ {"opacity": 100}, {"opacity": 0} ], 100); var newOpacity = num.parse(body.getComputedStyle().opacity); expect(newOpacity == opacity, isTrue); }); }); group('timing_dict', () { test('timing dict', () { var body = document.body; // Animate different characteristics so the tests can run concurrently. var fontSize = body.getComputedStyle().fontSize; var player = body.animate([ {"font-size": "500px"}, {"font-size": fontSize} ], { "duration": 100 }); var newFontSize = body.getComputedStyle().fontSize; // Don't bother to parse to numbers, as long as it's changed that // indicates something is happening. expect(newFontSize == fontSize, isFalse); player.on['finish'].listen(expectAsync((_) => 'done')); }); }); group('omit_timing', () { test('omit timing', () { var body = document.body; var player = body.animate([ {"transform": "translate(100px, -100%)"}, {"transform": "translate(400px, 500px)"} ]); player.on['finish'].listen(expectAsync((_) => 'done')); }); }); }