<html> 
<head>

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

<script>

function editingTest() {
    typeCharacterCommand('t');
    typeCharacterCommand('h');
    typeCharacterCommand('e');
    typeCharacterCommand(' ');
    typeCharacterCommand('n');
    typeCharacterCommand('o');
    typeCharacterCommand('t');
    typeCharacterCommand('a');
    typeCharacterCommand('t');
    typeCharacterCommand('i');
    typeCharacterCommand('o');
    typeCharacterCommand('n');
    typeCharacterCommand('l');
    typeCharacterCommand(' ');
    execDeleteCommand();
    execDeleteCommand();
    execDeleteCommand();
    typeCharacterCommand('l');
    typeCharacterCommand(' ');
}

</script>

<title>Autocorrection Simple Test</title> 
</head> 
<body>
<div>The test verified that if user modified an autocorrected word, then the autocorrection will not be applied again. You should see phrase 'the notationl', in which the word 'notationl' has red underline.</div>
<p  style="color:green">Note, this test can fail due to user specific spell checking data. If the user has previously dismissed 'notational' as the correct spelling of 'notationl' several times, the spell checker will not provide 'notational' as a suggestion anymore. 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>
