Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(738)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/events/script-tests/event-input-contentEditable.js

Issue 2709983005: Selection API: Do not change focus by Selection functions. (Closed)
Patch Set: . Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 description("This tests that the input events are dispatched when contentEditabl e nodes are edited"); 1 description("This tests that the input events are dispatched when contentEditabl e nodes are edited");
2 2
3 var actualInputEventCount = 0; 3 var actualInputEventCount = 0;
4 var expectedInputEventCount = 0; 4 var expectedInputEventCount = 0;
5 5
6 function fired(evt, expectedId, expectedText) 6 function fired(evt, expectedId, expectedText)
7 { 7 {
8 actualInputEventCount++; 8 actualInputEventCount++;
9 shouldBe("event.target.id", "'" + expectedId + "'"); 9 shouldBe("event.target.id", "'" + expectedId + "'");
10 shouldBe("event.target.innerHTML", "'" + expectedText + "'"); 10 shouldBe("event.target.innerHTML", "'" + expectedText + "'");
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 target6parent.addEventListener("input", function(evt) { fired(evt, "target6paren t", expectedText6); }); 78 target6parent.addEventListener("input", function(evt) { fired(evt, "target6paren t", expectedText6); });
79 expectedInputEventCount++; 79 expectedInputEventCount++;
80 target6start.addEventListener("input", function(evt) { testFailed("should not be reached"); }); 80 target6start.addEventListener("input", function(evt) { testFailed("should not be reached"); });
81 target6end.addEventListener("input", function(evt) { testFailed("should not be r eached"); }); 81 target6end.addEventListener("input", function(evt) { testFailed("should not be r eached"); });
82 target6middle.addEventListener("input", function(evt) { fired(evt, "target6end", ""); }); 82 target6middle.addEventListener("input", function(evt) { fired(evt, "target6end", ""); });
83 sel.selectAllChildren(target6parent); 83 sel.selectAllChildren(target6parent);
84 document.execCommand("createLink", false, "http://www.example.com/"); 84 document.execCommand("createLink", false, "http://www.example.com/");
85 85
86 // Ensure key events can cause the event 86 // Ensure key events can cause the event
87 var target7 = setupForFiringTest('<p id="target7" contentEditable>Replaced</p>', "X"); 87 var target7 = setupForFiringTest('<p id="target7" contentEditable>Replaced</p>', "X");
88 target7.focus();
88 sel.selectAllChildren(target7); 89 sel.selectAllChildren(target7);
89 eventSender.keyDown('X'); 90 eventSender.keyDown('X');
90 91
91 var target8 = setupForFiringTest('<p id="target8" contentEditable>Deleted</p>', ''); 92 var target8 = setupForFiringTest('<p id="target8" contentEditable>Deleted</p>', '');
92 sel.selectAllChildren(target8); 93 sel.selectAllChildren(target8);
93 eventSender.keyDown('Delete'); 94 eventSender.keyDown('Delete');
94 95
95 var target9parent = makeTestTarget('<div id="target9parent" contenteditable><div id="target9child" contenteditable>foo</div></div>'); 96 var target9parent = makeTestTarget('<div id="target9parent" contenteditable><div id="target9child" contenteditable>foo</div></div>');
96 var target9child = document.getElementById('target9child'); 97 var target9child = document.getElementById('target9child');
97 target9child.addEventListener("input", function(evt) { testFailed("should not be reached"); }); 98 target9child.addEventListener("input", function(evt) { testFailed("should not be reached"); });
98 target9parent.addEventListener("input", function(evt) { fired(evt, target9parent .id, '<div id="target9child" contenteditable="">Replacing</div>'); }); 99 target9parent.addEventListener("input", function(evt) { fired(evt, target9parent .id, '<div id="target9child" contenteditable="">Replacing</div>'); });
99 sel.selectAllChildren(target9child); 100 sel.selectAllChildren(target9child);
100 document.execCommand("insertText", false, "Replacing"); 101 document.execCommand("insertText", false, "Replacing");
101 expectedInputEventCount++; 102 expectedInputEventCount++;
102 103
103 var target10parent = makeTestTarget('<div id="t10parent" contenteditable><div id ="t10child" contenteditable=false><div id="t10gch" contenteditable>foo</div></di v></div>'); 104 var target10parent = makeTestTarget('<div id="t10parent" contenteditable><div id ="t10child" contenteditable=false><div id="t10gch" contenteditable>foo</div></di v></div>');
104 var target10child = document.getElementById("t10child"); 105 var target10child = document.getElementById("t10child");
105 var target10gch = document.getElementById("t10gch"); 106 var target10gch = document.getElementById("t10gch");
106 target10gch.addEventListener("input", function(evt) { fired(evt, target10gch.id, 'Replacing'); }); 107 target10gch.addEventListener("input", function(evt) { fired(evt, target10gch.id, 'Replacing'); });
107 sel.selectAllChildren(target10gch); 108 sel.selectAllChildren(target10gch);
108 document.execCommand("insertText", false, "Replacing"); 109 document.execCommand("insertText", false, "Replacing");
109 expectedInputEventCount++; 110 expectedInputEventCount++;
110 111
111 shouldBe("expectedInputEventCount", "actualInputEventCount"); 112 shouldBe("expectedInputEventCount", "actualInputEventCount");
112 clearTestTarget(); 113 clearTestTarget();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698