<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() {
	textarea = document.getElementById('test');
	textarea.focus();
    document.execCommand("InsertText", false, " ");
    textarea.setSelectionRange(0, 0);
    document.execCommand("InsertText", false, "mesage");
    textarea.setSelectionRange(7, 7);
    typeCharacterCommand('m');
}

</script>

<title>Autocorrection at Beginning of Word Test 1</title> 
</head> 
<body>
<div>The test verified that autocorrection does not occur when user starts typing a word. You should see the phrase "mesage m" with red underline on "mesage"</div>
<p  style="color:green">Note, this test can fail due to user specific spell checking data. If the user has previously dismissed 'message' as the correct spelling of 'mesage' several times, the spell checker will not provide 'notational' as a suggestion anymore. To fix this, remove all files in ~/Library/Spelling.</p>
<textarea id="test" cols="80" rows="10"></textarea>
</div>


<script>
runEditingTest();
</script>

</body>
</html>
