<body oncopy="log('oncopy fired'); return false;" oncut="log('oncut fired'); return false" onpaste="log('onpaste fired'); return false">
This tests to see if Copy, Cut, and Paste fire oncopy, oncut and onpaste even when those operations are disabled.   Since they are disabled they can't be performed from the Edit menu, they need to be explicitly performed via execCommand or -[WebView copy:].
<ul id="console"></ul>
<script>
function log(msg) {
    console = document.getElementById("console");
    li = document.createElement("li");
    text = document.createTextNode(msg);
    console.appendChild(li);
    li.appendChild(text);
}
if (window.testRunner) {
    window.testRunner.dumpAsText();
    window.testRunner.execCommand("Copy");
    window.testRunner.execCommand("Cut");
    window.testRunner.execCommand("Paste");
}
</script>
</body>
