blob: 09ab41e414b72032bbceb94139d7da4e6ab8ba40 [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(() => assert_selection(
[
'<div contenteditable>',
'<span>|foo</span>',
'</div>',
].join(''),
'insertText \t',
[
'<div contenteditable>',
'<span>',
'<span style="white-space:pre">\t|</span>',
'foo',
'</span>',
'</div>'
].join('')),
'Insert a tab character before text');
test(() => assert_selection(
[
'<div contenteditable>',
'<span>foo|</span>',
'</div>',
].join(''),
'insertText \t',
[
'<div contenteditable>',
'<span>',
'foo',
'<span style="white-space:pre">\t|</span>',
'</span>',
'</div>'
].join('')),
'Insert a tab character after text');
test(() => assert_selection(
[
'<div contenteditable>',
'<span>fo|o</span>',
'</div>',
].join(''),
'insertText \t',
[
'<div contenteditable>',
'<span>',
'fo',
'<span style="white-space:pre">\t|</span>',
'o',
'</span>',
'</div>'
].join('')),
'Insert a tab character in text');
test(() => assert_selection(
[
'<div contenteditable>',
'<span>|foo</span>',
'</div>',
].join(''),
selection => {
selection.document.execCommand('insertLineBreak');
selection.document.execCommand('insertText', false, '\t');
},
[
'<div contenteditable>',
'<span>',
'<br>',
'<span style="white-space:pre">\t|</span>',
'foo',
'</span>',
'</div>'
].join('')),
'Insert BR and a tab character before text');
</script>