<html>
<head>

<style>
.editing {
    border: 2px solid red;
    padding: 12px;
    font-size: 24px;
}
</style>
<script src="../../LayoutTests/editing/editing.js"></script>

<script>
function editingTest() {
    typeCharacterCommand('t');
    typeCharacterCommand('h');
    typeCharacterCommand('e');
    typeCharacterCommand(' ');
    typeCharacterCommand('c');
    typeCharacterCommand('y');
    typeCharacterCommand('l');
    typeCharacterCommand('i');
    typeCharacterCommand('n');
    typeCharacterCommand('d');
    typeCharacterCommand('r');
}

</script>

<title>Spellchecking After Reversion Test</title>
</head>
<body>
<div><p>This test verifies the behavior of spellchecking after reversion.</p>
<ol>
<li>After seeing the correction panel, press space to accept the correction.</li>
<li>Press delete key to bring up reversion bubble.</li>
<li>Press down arrow followed by return key to accept the reversion suggestion.</li>
<li>Press space key again, and verify that the word "cylindr" IS NOT marked as misspelled.</li>
<li>Press delete key twice.</li>
<li>Press space key again, and verify that the word "cylind" IS marked as misspelled.</li>
</ol>
<p  style="color:green">Note, this test can fail due to user specific spell checking data. To fix this, remove all files in ~/Library/Spelling.</p>
<div contenteditable id="root" class="editing">
<span id="test"></span>
</div>


<script>
runEditingTest();
</script>

</body>
</html>
