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

Side by Side Diff: LayoutTests/editing/deleting/delete-br-001.html

Issue 18799004: Don't insert redundant BR for merging (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: 2013-09-05T16:10:37 Created 7 years, 3 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 | Annotate | Revision Log
OLDNEW
1 <body> 1 <body>
2 <div id="container"> 2 <div id="container">
3 <div contenteditable="true" id="work"></div> 3 <div contenteditable="true" id="work"></div>
4 </div> 4 </div>
5 </div> 5 </div>
6 <script src="../../fast/js/resources/js-test-pre.js"></script> 6 <script src="../../fast/js/resources/js-test-pre.js"></script>
7 <script> 7 <script>
8 function $(id) { return document.getElementById(id); } 8 function $(id) { return document.getElementById(id); }
9 9
10 var sampleHTML = 'abc<br id="a"><br id="b"><br id="c">def'; 10 var sampleHTML = 'abc<br id="a"><br id="b"><br id="c">def';
11 var selection = window.getSelection(); 11 var selection = window.getSelection();
12 function testIt(nth, numberOfDeletes, expectedOffset, expectedHTML) { 12 function testIt(nth, numberOfDeletes, expectedOffset, expectedHTML) {
13 $('work').innerHTML = sampleHTML; 13 $('work').innerHTML = sampleHTML;
14 var range = document.createRange(); 14 var range = document.createRange();
15 range.setStartAfter($('work').querySelectorAll('br')[nth]); 15 range.setStartAfter($('work').querySelectorAll('br')[nth]);
16 selection.removeAllRanges(); 16 selection.removeAllRanges();
17 selection.addRange(range); 17 selection.addRange(range);
18 for (var i = 0; i < numberOfDeletes; ++i) 18 for (var i = 0; i < numberOfDeletes; ++i)
19 document.execCommand('Delete'); 19 document.execCommand('Delete');
20 shouldBeEqualToString('$("work").innerHTML', expectedHTML); 20 shouldBeEqualToString('$("work").innerHTML', expectedHTML);
21 shouldBeEqualToString('selection.type', 'Caret'); 21 shouldBeEqualToString('selection.type', 'Caret');
22 shouldBe('selection.anchorOffset', expectedOffset + ''); 22 shouldBe('selection.anchorOffset', expectedOffset + '');
23 } 23 }
24 24
25 testIt(0, 1, 3, 'abc<br id="b"><br id="c">def'); 25 testIt(0, 1, 3, 'abc<br id="b"><br id="c">def');
26 testIt(1, 1, 2, 'abc<br id="a"><br>def'); 26 testIt(1, 1, 2, 'abc<br id="a"><br id="c">def');
27 testIt(2, 1, 0, 'abc<br id="a"><br id="b">def'); 27 testIt(2, 1, 0, 'abc<br id="a"><br id="b">def');
28 testIt(1, 2, 3, 'abc<br>def'); 28 testIt(1, 2, 3, 'abc<br id="c">def');
29 testIt(2, 2, 0, 'abc<br id="a">def'); 29 testIt(2, 2, 0, 'abc<br id="a">def');
30 testIt(2, 3, 3, 'abcdef'); 30 testIt(2, 3, 3, 'abcdef');
31 31
32 if (window.testRunner) 32 if (window.testRunner)
33 $('container').outerHTML = ''; 33 $('container').outerHTML = '';
34 else 34 else
35 $('work').innerHTML = sampleHTML; 35 $('work').innerHTML = sampleHTML;
36 </script> 36 </script>
37 <script src="../../fast/js/resources/js-test-post.js"></script> 37 <script src="../../fast/js/resources/js-test-post.js"></script>
38 </body> 38 </body>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698