<html> 
<head>

<style>
.editing { 
    border: 2px solid red; 
    font-size: 24px; 
}
.explanation { 
    border: 2px solid blue; 
    padding: 12px; 
    font-size: 24px; 
    margin-bottom: 24px;
}
.scenario { margin-bottom: 16px;}
.scenario:first-line { font-weight: bold; margin-bottom: 16px;}
.expected-results:first-line { font-weight: bold }
</style>
<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>

<script>

function editingTest() {
    extendSelectionForwardByWordCommand();
    copyCommand();
    moveSelectionForwardByCharacterCommand();
    moveSelectionForwardByCharacterCommand();
    pasteCommand();
}

</script>

<title>Editing Test</title> 
</head> 
<body>

<div class="explanation">
<div class="scenario">
Tests: 
<br>
Smart paste when pasting after word and a space before another word.
</div>
<div class="expected-results">
Expected Results:
<br>
A space should be added after the pasted word before the other preexisting word.  It should like this this:
<BR>
test test test
</div>
</div>

<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
<div id="test" class="editing">
test test
</div>
</div>

<script>
runEditingTest();
</script>

</body>
</html>
