48 lines
1.2 KiB
HTML
48 lines
1.2 KiB
HTML
<script>
|
|
if (window.testRunner) {
|
|
testRunner.dumpEditingCallbacks();
|
|
testRunner.dumpAsText();
|
|
}
|
|
|
|
function log(str) {
|
|
var li = document.createElement("li");
|
|
li.appendChild(document.createTextNode(str));
|
|
var console = document.getElementById("console");
|
|
console.appendChild(li);
|
|
}
|
|
function shouldBe(expected, actual) {
|
|
if (expected != actual)
|
|
log("Failure. Expected: " + expected + ", Actual: " + actual);
|
|
else
|
|
log("Passed");
|
|
}
|
|
</script>
|
|
<p>This tests copy/paste of select elements. All the options should be included.</p>
|
|
<div id="copy" contenteditable="true">
|
|
<select id="select">
|
|
<option>One</option>
|
|
<option>Two</option>
|
|
<option>Three</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div id="paste" contenteditable="true"></div>
|
|
<ul id="console"></ul>
|
|
<script>
|
|
var copy = document.getElementById("copy");
|
|
copy.focus();
|
|
document.execCommand("SelectAll");
|
|
document.execCommand("Cut");
|
|
|
|
shouldBe(document.getElementById("select"), null);
|
|
|
|
var paste = document.getElementById("paste");
|
|
paste.focus();
|
|
document.execCommand("Paste");
|
|
|
|
var select = document.getElementById("select");
|
|
shouldBe(select.options[0].value, "One");
|
|
shouldBe(select.options[1].value, "Two");
|
|
shouldBe(select.options[2].value, "Three");
|
|
</script>
|