blob: 2980475ee5dfb102320128d7984408a3ac82f6e8 [file] [log] [blame]
<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../assert_selection.js"></script>
<script>
// This layout tests demonstartes the undo command.
for (const platform of ['mac', 'win', 'unix', 'android']) {
selection_test(
'<div contenteditable>abc|</div>',
selection => {
assert_not_equals(window.internals, undefined,
'this test requires internals');
internals.settings.setEditingBehavior(platform);
const document = selection.document;
document.execCommand('delete');
document.execCommand('insertText', false, 'x');
document.execCommand('delete');
document.execCommand('undo');
},
[
'<div contenteditable>',
platform === 'mac'
? 'ab|x^'
: 'abx|',
'</div>'
],
`${platform}: undo on delete insert delete`);
selection_test(
'<div contenteditable>abx|</div>',
selection => {
assert_not_equals(window.internals, undefined,
'this test requires internals');
internals.settings.setEditingBehavior(platform);
const document = selection.document;
document.execCommand('insertText', false, 'y');
document.execCommand('delete');
document.execCommand('undo');
},
[
'<div contenteditable>',
platform === 'mac'
? 'abx|y^'
: 'abxy|',
'</div>'
],
`${platform}: undo on delete insert delete.`);
}
</script>