Index: LayoutTests/editing/deleting/smart-delete-003.html |
diff --git a/LayoutTests/editing/deleting/smart-delete-003.html b/LayoutTests/editing/deleting/smart-delete-003.html |
index 82ca37371fac968cda2a826fb65dc821849b92ad..87647dacf020375ce65d9abb7511896b2e5c4d9c 100644 |
--- a/LayoutTests/editing/deleting/smart-delete-003.html |
+++ b/LayoutTests/editing/deleting/smart-delete-003.html |
@@ -1,15 +1,30 @@ |
+<!DOCTYPE html> |
+<script src="../../resources/js-test.js"></script> |
+<p>Please tun this test with DRT.</p> |
+<p>To run it manually, double click on 'bar' and hit delete. You should see 'foo baz'.</p> |
+<div id="includeSpace" contenteditable="true">foo b<span id="target">a</span>r baz</div> |
+<div id="notIncludeSpace" contenteditable="true">foo b<span id="target">a</span>r baz</div> |
<script> |
-if (window.testRunner) |
- testRunner.dumpEditingCallbacks(); |
-</script> |
-<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script> |
-<p>This tests deleting a selection created with a word granularity. To run it manually, double click on 'bar' and hit delete. You should see 'foo baz'.</p> |
-<div id="div" contenteditable="true">foo b<span id="target">a</span>r baz</div> |
- |
-<script> |
-if (window.testRunner) { |
- var target = document.getElementById("target"); |
- doubleClick(target.offsetLeft, target.offsetTop); |
- testRunner.execCommand("DeleteBackward"); |
+description('Test for smart delete backward on double click selected word.'); |
+var sample; |
+function testIt(sampleId, expectedString, expectedOffset) { |
+ if (!window.testRunner) |
+ return; |
+ sample = document.getElementById(sampleId); |
+ var target = sample.querySelector('#target'); |
+ internals.settings.setSelectTrailingWhitespaceEnabled(sampleId == 'includeSpace'); |
+ eventSender.mouseMoveTo(target.offsetLeft, target.offsetTop); |
+ eventSender.mouseDown(); |
+ eventSender.mouseUp(); |
+ eventSender.mouseDown(); |
+ eventSender.mouseUp(); |
+ debug(sampleId); |
+ testRunner.execCommand('DeleteBackward'); |
+ shouldBeEqualToString('sample.innerText', expectedString); |
+ shouldBe('getSelection().rangeCount', '1'); |
+ shouldBe('getSelection().focusNode', 'sample.firstChild'); |
+ shouldBe('getSelection().focusOffset', expectedOffset.toString()); |
} |
+testIt('includeSpace', 'foo baz', 4); |
+testIt('notIncludeSpace', 'foo\u00A0baz', 3); |
</script> |