Index: third_party/WebKit/LayoutTests/fast/events/pointerevents/mouse-pointer-event-properties.html |
diff --git a/third_party/WebKit/LayoutTests/fast/events/pointerevents/mouse-pointer-event-properties.html b/third_party/WebKit/LayoutTests/fast/events/pointerevents/mouse-pointer-event-properties.html |
index 3a27e0030451b115db3be0ce100a910e8822adf3..4d8274c642c6f13e9543d2485010858a2682696d 100644 |
--- a/third_party/WebKit/LayoutTests/fast/events/pointerevents/mouse-pointer-event-properties.html |
+++ b/third_party/WebKit/LayoutTests/fast/events/pointerevents/mouse-pointer-event-properties.html |
@@ -22,10 +22,12 @@ div { |
description("Verifies that pointer event parameters are correct when fired for mouse events."); |
// TODO(mustaq): Grow the list as we add support for more PEs |
-var testEventList = ["mouseenter", "mouseleave", "mouseover", "mouseout", |
- "pointerenter", "pointerleave", "pointerover", "pointerout"]; |
+var testEventList = ["mouseenter", "mouseleave", "mouseover", "mouseout", "mouseup", "mousedown", |
+ "pointerenter", "pointerleave", "pointerover", "pointerout", "pointerup", "pointerdown"]; |
var lastPointerEvent = null; |
+var checkKeyModifiers = false; |
+ |
var numericAttributes = [ |
"clientX", |
"clientY", |
@@ -58,31 +60,37 @@ function init() { |
lastPointerEvent = event; |
else { |
shouldBeNonNull("lastPointerEvent"); |
- |
shouldBeEqualToString("lastPointerEvent.type", event.type.replace("mouse", "pointer")); |
- if (lastPointerEvent.type=="pointerenter" || lastPointerEvent.type=="pointerleave") { |
- shouldBeFalse("lastPointerEvent.bubbles"); |
- shouldBeFalse("lastPointerEvent.cancelable"); |
- } else { |
- shouldBeTrue("lastPointerEvent.bubbles"); |
- shouldBeTrue("lastPointerEvent.cancelable"); |
- } |
- shouldBeEqualToNumber("lastPointerEvent.pointerId", 0); |
- shouldBeEqualToString("lastPointerEvent.pointerType", "mouse"); |
- shouldBeTrue("lastPointerEvent.isPrimary"); |
+ if (!checkKeyModifiers) { |
+ |
+ if (lastPointerEvent.type=="pointerenter" || lastPointerEvent.type=="pointerleave") { |
+ shouldBeFalse("lastPointerEvent.bubbles"); |
+ shouldBeFalse("lastPointerEvent.cancelable"); |
+ } else { |
+ shouldBeTrue("lastPointerEvent.bubbles"); |
+ shouldBeTrue("lastPointerEvent.cancelable"); |
+ } |
+ |
+ shouldBeEqualToNumber("lastPointerEvent.pointerId", 0); |
Rick Byers
2015/10/20 19:09:50
curious: does Edge still have this behavior of alw
mustaq
2015/10/21 15:17:21
Edge uses id=1 for mouse.
I am tracking this thou
Rick Byers
2015/10/22 21:31:51
Ok, added comments there - but let's not block thi
|
+ shouldBeEqualToString("lastPointerEvent.pointerType", "mouse"); |
+ shouldBeTrue("lastPointerEvent.isPrimary"); |
+ |
+ numericAttributes.forEach(function(attribute) { |
+ shouldBeEqualToNumber("lastPointerEvent." + attribute, eval("event." + attribute)); |
+ }); |
- numericAttributes.forEach(function(attribute) { |
- shouldBeEqualToNumber("lastPointerEvent." + attribute, eval("event." + attribute)); |
- }); |
+ } else { |
+ |
+ forEachModifier(function(attr, modifierName) { |
+ var getModifierStateStr = ".getModifierState('" + modifierName + "');" |
+ if (eval("event" + getModifierStateStr)) |
+ shouldBeTrue("lastPointerEvent" + getModifierStateStr); |
+ else |
+ shouldBeFalse("lastPointerEvent" + getModifierStateStr); |
+ }); |
- forEachModifier(function(attr, modifierName) { |
- var getModifierStateStr = ".getModifierState('" + modifierName + "');" |
- if (eval("event" + getModifierStateStr)) |
- shouldBeTrue("lastPointerEvent" + getModifierStateStr); |
- else |
- shouldBeFalse("lastPointerEvent" + getModifierStateStr); |
- }); |
+ } |
lastPointerEvent = null; |
} |
@@ -93,10 +101,29 @@ function init() { |
function runTests() { |
var rect = document.getElementById("target").getBoundingClientRect(); |
+ |
+ debug("--- move mouse into target ---"); |
eventSender.mouseMoveTo(rect.left + 5, rect.top + 5); |
- eventSender.mouseMoveTo(rect.left - 5, rect.top - 5); |
+ debug(""); |
+ |
+ debug("--- click each button ---"); |
+ for (var button = 0; button <=2; button++) { |
+ eventSender.mouseDown(button); |
+ eventSender.mouseUp(button); |
+ } |
+ debug(""); |
+ |
+ debug("--- click with each modifier ---"); |
+ checkKeyModifiers = true; |
+ forEachModifier(function(attr, modifierName, eventSenderName) { |
+ eventSender.mouseDown(0, [eventSenderName]); |
+ eventSender.mouseUp(0, [eventSenderName]); |
+ }); |
+ checkKeyModifiers = false; |
+ debug(""); |
- //TODO(mustaq): add tests for buttons & modifierStates when doing pointerdown/up. |
+ debug("--- move mouse out of target ---"); |
+ eventSender.mouseMoveTo(rect.left - 5, rect.top - 5); |
} |
init(); |