<!DOCTYPE html>
<html>
<head>
<script src="../../resources/dump-as-markup.js"></script>
</head>
<body>
<div contenteditable id="root" class="editing"><span id="test">hello<span class="Apple-tab-span" style="white-space:pre">		</span>world</span> 
</div>
<script>

if (window.testRunner)
    testRunner.dumpAsText();

Markup.description("This test ensures pasting content before a tab span isn't pasted into the tab span.");
var sel = window.getSelection();
var testSpan = document.getElementById("test");
sel.setBaseAndExtent(testSpan.firstChild, 0, testSpan.firstChild, 5);

document.execCommand("copy");
sel.setPosition(testSpan.firstChild, 5);
document.execCommand("paste");
if (window.eventSender)
    eventSender.keyDown("a");

Markup.dump("root", "Result")
</script>
</body>
</html>
