57 lines
1.8 KiB
HTML
57 lines
1.8 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test.js"></script>
|
|
<style>
|
|
#target {
|
|
height: 200px;
|
|
width: 220px;
|
|
border: 5px solid blue;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body onload="runTest()">
|
|
<p id="description"></p>
|
|
<div contenteditable=true id="target"></div>
|
|
<div><img id="source" src="resources/apple.gif" alt="alt-text" itemprop="somedata" arbitrary="green"></div>
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
description('This test verify dragging an image in the page keeps its attributes. To test manually, drag the image and drop it in the rect with a blue border.');
|
|
var jsTestIsAsync = true;
|
|
var target = document.getElementById('target');
|
|
|
|
function contentInserted() {
|
|
shouldBe('target.getElementsByTagName("img").length', '1');
|
|
shouldBe('target.getElementsByTagName("img")[0].attributes.length', '5');
|
|
shouldBeEqualToString('target.getElementsByTagName("img")[0].id', 'source');
|
|
shouldBeEqualToString('target.getElementsByTagName("img")[0].alt', 'alt-text');
|
|
shouldBeEqualToString('target.getElementsByTagName("img")[0].attributes["itemprop"].value', 'somedata');
|
|
shouldBeEqualToString('target.getElementsByTagName("img")[0].attributes["arbitrary"].value', 'green');
|
|
|
|
finishJSTest();
|
|
}
|
|
|
|
function runTest() {
|
|
target.addEventListener('DOMNodeInserted', contentInserted, false);
|
|
if (!window.testRunner)
|
|
return;
|
|
|
|
e = document.getElementById("source");
|
|
x = e.offsetLeft + e.offsetWidth / 2;
|
|
y = e.offsetTop + e.offsetHeight / 2;
|
|
|
|
eventSender.mouseMoveTo(x, y);
|
|
eventSender.mouseDown();
|
|
eventSender.leapForward(100);
|
|
e = document.getElementById("target");
|
|
x = e.offsetLeft + e.offsetWidth / 2;
|
|
y = e.offsetTop + e.offsetHeight / 2;
|
|
|
|
eventSender.mouseMoveTo(x, y);
|
|
eventSender.mouseUp();
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|