Chromium Code Reviews| Index: LayoutTests/fast/events/ime-composition-events-001.html |
| diff --git a/LayoutTests/fast/events/ime-composition-events-001.html b/LayoutTests/fast/events/ime-composition-events-001.html |
| index 1a5e59625fcdc3b5791e6babe3c3be81efd5125e..aae2325aaadcafa3c1c8589f770d844fb75bbadb 100644 |
| --- a/LayoutTests/fast/events/ime-composition-events-001.html |
| +++ b/LayoutTests/fast/events/ime-composition-events-001.html |
| @@ -1,75 +1,70 @@ |
| <html> |
| <head> |
| -<title></title> |
| +<script src="../js/resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| -<p>This tests that calling input-method functions sends Composition Events and Text Events introduced in DOM Level 3.</p> |
| -<p>To test manually, enable an IME, input CJK characters, and see this page doesn't show 'FAILED' lines.</p> |
| -<input id="test" type="text"/> |
| -<ul id="console"></ul> |
| -<script language="javascript" type="text/javascript"> |
| -function log(str) { |
| - var li = document.createElement('li'); |
| - li.appendChild(document.createTextNode(str)); |
| - var console = document.getElementById('console'); |
| - console.appendChild(li); |
| +<input id="test" type="text"> |
| +<script> |
| +description("This tests that calling input-method functions sends Composition Events and Text Events introduced in DOM Level 3. " + |
|
tkent
2013/07/01 06:31:39
double quote
kochi
2013/07/01 06:36:42
Done.
|
| +"To test manually, enable an IME, input CJK characters, and see this page doesn't show 'FAIL' lines."); |
| +</script> |
| +<script> |
| +function logCompositionStart(event) { |
| + shouldBeEqualToString('event.type', 'compositionstart'); |
| + testPassed('event.data is "' + event.data + '"'); |
| +} |
| + |
| +function logCompositionUpdate(event) { |
| + shouldBeEqualToString("event.type", "compositionupdate"); |
|
tkent
2013/07/01 06:31:39
Ditto.
kochi
2013/07/01 06:36:42
Done.
|
| + testPassed('event.data is "' + event.data + '"'); |
| } |
| -function logEvent(e) { |
| - var target = e.target; |
| - var type = e.type; |
| - if (e.type == 'compositionstart' || e.type == 'compositionupdate' || e.type == 'compositionend' || e.type == 'textInput') |
| - log('SUCCESS: ' + target.tagName + ' - ' + e.type + ' - "' + e.data + '"'); |
| - else |
| - log('FAILED: ' + target.tagName + ' - ' + e.type + ' - "' + e.data + '"'); |
| +function logCompositionEnd(event) { |
| + shouldBeEqualToString("event.type", "compositionend"); |
|
tkent
2013/07/01 06:31:39
Ditto.
kochi
2013/07/01 06:36:42
Done.
|
| + testPassed('event.data is "' + event.data + '"'); |
| +} |
| + |
| +function logTextInput(event) { |
| + shouldBeEqualToString("event.type", "textInput"); |
|
tkent
2013/07/01 06:31:39
Ditto.
kochi
2013/07/01 06:36:42
Done.
|
| + testPassed('event.data is "' + event.data + '"'); |
| } |
| var test = document.getElementById('test'); |
| test.focus(); |
| -if (window.testRunner) { |
| - testRunner.dumpAsText(); |
| - |
| - // Add event listeners to the <input> node. |
| - test.addEventListener("compositionstart", logEvent, false); |
| - test.addEventListener("compositionupdate", logEvent, false); |
| - test.addEventListener("compositionend", logEvent, false); |
| - test.addEventListener("textInput", logEvent, false); |
| +// Add event listeners to the <input> node. |
| +test.addEventListener('compositionstart', logCompositionStart, false); |
| +test.addEventListener('compositionupdate', logCompositionUpdate, false); |
| +test.addEventListener('compositionend', logCompositionEnd, false); |
| +test.addEventListener('textInput', logTextInput, false); |
| - // Case 1: Compose a text and commit it. |
| - textInputController.setMarkedText('1', 0, 1); |
| - textInputController.setMarkedText('2', 0, 1); |
| - textInputController.setMarkedText('3', 0, 1); |
| - textInputController.insertText('4'); |
| +// Case 1: Compose a text and commit it. |
| +textInputController.setMarkedText('1', 0, 1); |
| +textInputController.setMarkedText('2', 0, 1); |
| +textInputController.setMarkedText('3', 0, 1); |
| +textInputController.insertText('4'); |
| - // Case 2: Compose a text but cancel it. |
| - textInputController.setMarkedText('5', 0, 1); |
| - textInputController.setMarkedText('6', 0, 1); |
| - textInputController.setMarkedText('7', 0, 1); |
| - textInputController.setMarkedText('', 0, 0); |
| +// Case 2: Compose a text but cancel it. |
| +textInputController.setMarkedText('5', 0, 1); |
| +textInputController.setMarkedText('6', 0, 1); |
| +textInputController.setMarkedText('7', 0, 1); |
| +textInputController.setMarkedText('', 0, 0); |
| - // Case 3: Insert a text without composition. |
| - textInputController.insertText('8'); |
| +// Case 3: Insert a text without composition. |
| +textInputController.insertText('8'); |
| - // Case 4: Compose a text and commit it by removing the mark. |
| - // Only Mac and Chromium ports support unmarkText. |
| - if (textInputController.unmarkText) { |
| - textInputController.setMarkedText('9', 0, 1); |
| - textInputController.unmarkText(); |
| - } |
| +// Case 4: Compose a text and commit it by removing the mark. |
| +textInputController.setMarkedText('9', 0, 1); |
| +textInputController.unmarkText(); |
| - // Case 5: Compose a text on selection and commit it. |
| - test.value = 'I have a pen'; |
| - test.selectionStart = 2; |
| - test.selectionEnd = 6; |
| - textInputController.setMarkedText('lost', 0, 1); |
| - textInputController.insertText('made'); |
| - if (test.value == 'I made a pen') { |
| - log('SUCCESS: ' + test.value); |
| - } else { |
| - log('FAILURE: ' + test.value + ' is not "I made a pen".'); |
| - } |
| -} |
| +// Case 5: Compose a text on selection and commit it. |
| +test.value = 'I have a pen'; |
| +test.selectionStart = 2; |
| +test.selectionEnd = 6; |
| +textInputController.setMarkedText('lost', 0, 1); |
| +textInputController.insertText('made'); |
| +shouldBeEqualToString('test.value', 'I made a pen'); |
| </script> |
| +<script src="../js/resources/js-test-post.js"></script> |
| </body> |
| </html> |