blob: 8b61f9ee74842348890b4a7bd2a6ca5a8508af28 [file] [log] [blame]
<!doctype html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../assert_selection.js"></script>
<script>
// Test to make sure WebKit does not remove content when unbolding nested b\'s.
// See https://bugs.webkit.org/show_bug.cgi?id=30083 for detail.
function editable(sample) {
return `<div contenteditable>${sample}</div>`;
}
function testIt(command_name, input, expected, description) {
selection_test(editable(input), command_name, editable(expected),
description);
}
testIt('bold',
'<span>^<b>1<b>2</b></b>|</span>',
'<span>^12|</span>',
'bold-1');
testIt('bold',
'<span>^<b id="foo">1<b>2</b></b>|</span>',
'<span><span id="foo">^12|</span></span>',
'bold-2');
testIt('bold',
'<span>^<b id="foo"><b>1</b>2</b>|</span>',
'<span><span id="foo">^12|</span></span>',
'bold-3');
testIt('bold',
'<span>^<b><b><b>12</b></b></b>|</span>',
'<span>^12|</span>',
'bold-4');
testIt('bold',
'<span>^<b><b><b>1</b></b>2</b>|</span>',
'<span>^12|</span>',
'bold-5');
testIt('italic',
'<span>^<i>1<i>2</i></i>|</span>',
'<span>^12|</span>',
'italic-1');
testIt('strikeThrough',
'<span>^<s>1<s>2</s></s>|</span>',
'<span>^12|</span>',
'strike-through-1');
</script>