| OLD | NEW | 
|---|
| 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 library transition_event_test; | 5 library transition_event_test; | 
| 6 import '../../pkg/unittest/lib/unittest.dart'; | 6 import '../../pkg/unittest/lib/unittest.dart'; | 
| 7 import '../../pkg/unittest/lib/html_individual_config.dart'; | 7 import '../../pkg/unittest/lib/html_individual_config.dart'; | 
| 8 import 'dart:html'; | 8 import 'dart:html'; | 
|  | 9 import 'dart:async'; | 
| 9 | 10 | 
| 10 main() { | 11 main() { | 
| 11   useHtmlIndividualConfiguration(); | 12   useHtmlIndividualConfiguration(); | 
| 12 | 13 | 
| 13   group('supported', () { | 14   group('supported', () { | 
| 14     test('supported', () { | 15     test('supported', () { | 
| 15       expect(CssStyleDeclaration.supportsTransitions, true); | 16       expect(CssStyleDeclaration.supportsTransitions, true); | 
| 16     }); | 17     }); | 
| 17   }); | 18   }); | 
| 18 | 19 | 
| 19   group('functional', () { | 20   group('functional', () { | 
| 20     test('transitionEnd', () { | 21     test('transitionEnd', () { | 
| 21       if (CssStyleDeclaration.supportsTransitions) { | 22       if (CssStyleDeclaration.supportsTransitions) { | 
| 22         var element = new DivElement(); | 23         var element = new DivElement(); | 
| 23         document.body.append(element); | 24         document.body.append(element); | 
| 24 | 25 | 
| 25         element.style.opacity = '0'; | 26         element.style.opacity = '0'; | 
| 26         element.style.width = '100px'; | 27         element.style.width = '100px'; | 
| 27         element.style.height = '100px'; | 28         element.style.height = '100px'; | 
| 28         element.style.background = 'red'; | 29         element.style.background = 'red'; | 
| 29         element.style.transition = 'opacity .1s'; | 30         element.style.transition = 'opacity .1s'; | 
| 30 | 31 | 
| 31         window.setTimeout(expectAsync0(() { | 32         new Timer(const Duration(milliseconds: 100), expectAsync0(() { | 
| 32           element.onTransitionEnd.first.then(expectAsync1((e) { | 33           element.onTransitionEnd.first.then(expectAsync1((e) { | 
| 33             expect(e is TransitionEvent, isTrue); | 34             expect(e is TransitionEvent, isTrue); | 
| 34             expect(e.propertyName, 'opacity'); | 35             expect(e.propertyName, 'opacity'); | 
| 35           })); | 36           })); | 
| 36 | 37 | 
| 37           element.style.opacity = '1'; | 38           element.style.opacity = '1'; | 
| 38         }), 100); | 39         })); | 
| 39       } | 40       } | 
| 40     }); | 41     }); | 
| 41   }); | 42   }); | 
| 42 } | 43 } | 
| OLD | NEW | 
|---|