Index: test/codegen/lib/html/wheelevent_test.dart |
diff --git a/test/codegen/lib/html/wheelevent_test.dart b/test/codegen/lib/html/wheelevent_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..78db308cffb6f496d63639722087fe1ba4ab1709 |
--- /dev/null |
+++ b/test/codegen/lib/html/wheelevent_test.dart |
@@ -0,0 +1,58 @@ |
+// 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 wheel_event_test; |
+ |
+import 'package:unittest/unittest.dart'; |
+import 'package:unittest/html_config.dart'; |
+import 'dart:html'; |
+ |
+main() { |
+ useHtmlConfiguration(); |
+ |
+ test('wheelEvent', () { |
+ var element = new DivElement(); |
+ var eventType = Element.mouseWheelEvent.getEventType(element); |
+ |
+ element.onMouseWheel.listen(expectAsync((e) { |
+ expect(e.screen.x, 100); |
+ expect(e.deltaX, 0); |
+ expect(e.deltaY.toDouble(), 240.0); |
+ expect(e.deltaMode, WheelEvent.DOM_DELTA_PAGE); |
+ })); |
+ var event = new WheelEvent(eventType, |
+ deltaX: 0, |
+ deltaY: 240, |
+ deltaMode: WheelEvent.DOM_DELTA_PAGE, |
+ screenX: 100); |
+ element.dispatchEvent(event); |
+ }); |
+ |
+ test('wheelEvent with deltaZ', () { |
+ var element = new DivElement(); |
+ var eventType = Element.mouseWheelEvent.getEventType(element); |
+ |
+ element.onMouseWheel.listen(expectAsync((e) { |
+ expect(e.deltaX, 0); |
+ expect(e.deltaY, 0); |
+ expect(e.screen.x, 0); |
+ expect(e.deltaZ.toDouble(), 1.0); |
+ })); |
+ var event = new WheelEvent(eventType, deltaZ: 1.0); |
+ element.dispatchEvent(event); |
+ }); |
+ |
+ test('wheelEvent Stream', () { |
+ var element = new DivElement(); |
+ var eventType = Element.mouseWheelEvent.getEventType(element); |
+ |
+ element.onMouseWheel.listen(expectAsync((e) { |
+ expect(e.screen.x, 100); |
+ expect(e.deltaX.toDouble(), 240.0); |
+ expect(e.deltaY, 0); |
+ })); |
+ var event = new WheelEvent(eventType, deltaX: 240, deltaY: 0, screenX: 100); |
+ element.dispatchEvent(event); |
+ }); |
+} |