blob: d73262c5ea12e2a7c918374d098af9c922f006c4 [file] [log] [blame]
<html>
<head>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
function resetField()
{
event.target.value = '';
}
function runTest()
{
test(() => {
assert_own_property(
window, 'eventSender',
'This test requires eventSender. To test this manually drag the link into the text field.');
elementToDrag = document.getElementById("elementToDrag");
x1 = elementToDrag.offsetLeft + elementToDrag.offsetWidth / 2;
y1 = elementToDrag.offsetTop + elementToDrag.offsetHeight / 2;
dragTarget = document.getElementById("dragTarget");
x2 = dragTarget.offsetLeft + dragTarget.offsetWidth / 2;
y2 = dragTarget.offsetTop + dragTarget.offsetHeight / 2;
eventSender.mouseMoveTo(x1,y1);
eventSender.mouseDown();
eventSender.leapForward(400);
eventSender.mouseMoveTo(x2, y2);
eventSender.mouseUp();
assert_equals(dragTarget.value, elementToDrag.href);
//clean up output
elementToDrag.parentNode.removeChild(elementToDrag);
dragTarget.parentNode.removeChild(dragTarget);
}, "This tests that we don't lose data dropped onto an input field that changes its content during a drop event");
}
</script>
</head>
<body>
<p id="description"></p>
<a id="elementToDrag" href="http://example.com">A link!</a>
<input id="dragTarget" type="text" value="Original Text" onfocus="resetField()" />
<div id="console"></div>
<script>
runTest();
</script>
</body>
</html>