chromium/third_party/blink/web_tests/editing/selection/modify_move/move_left_word_05_ltr_multi_line.html

<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
// To verify "mac" behavior other than macOS, please add following lines:
//   internals.settings.setEditingBehavior('mac');
//   internals.settings.setSelectTrailingWhitespaceEnabled(false);
const isMac = navigator.platform.indexOf('Mac') === 0;

selection_test(
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-0 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">a|bc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-1 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">ab|c \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-2 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc| \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-3 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc |\u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">|abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-4 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0|\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc |\u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-5 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0|\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc |\u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-6 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0| hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc |\u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-7 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 |hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc |\u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-8 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 h|ij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 |hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-9 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hi|j \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 |hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-10 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij| \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 |hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-11 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij |\u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 |hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-12 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0|\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij |\u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-13 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0|\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij |\u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-14 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0| xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij |\u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-15 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 |xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij |\u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-16 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 x|yz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 |xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-17 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xy|z<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 |xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-18 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz|<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 |xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-19 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz|<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 |xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-20 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br>|<br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz|<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-21 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br>|<br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br>|<br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-22 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>|\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br>|<br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-23 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0|\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>|\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-24 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0|\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>|\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-25 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0| kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>|\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-26 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 |kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>|\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-27 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 k|j \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 |kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-28 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj| \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 |kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-29 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj |\u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 |kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-30 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0|\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj |\u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-31 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0|\u05D0 opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj |\u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-32 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0| opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj |\u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-33 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 |opq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj |\u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0</div>',
  '5-34 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 o|pq \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 |opq \u05D0\u05D0\u05D0</div>',
  '5-35 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 op|q \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 |opq \u05D0\u05D0\u05D0</div>',
  '5-36 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq| \u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 |opq \u05D0\u05D0\u05D0</div>',
  '5-37 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq |\u05D0\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 |opq \u05D0\u05D0\u05D0</div>',
  '5-38 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0|\u05D0\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq |\u05D0\u05D0\u05D0</div>',
  '5-39 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0|\u05D0</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq |\u05D0\u05D0\u05D0</div>',
  '5-40 ltr left word');

selection_test(
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq \u05D0\u05D0\u05D0|</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="ltr">abc \u05D0\u05D0\u05D0 hij \u05D0\u05D0\u05D0 xyz<br><br><br>\u05D0\u05D0\u05D0 kj \u05D0\u05D0\u05D0 opq |\u05D0\u05D0\u05D0</div>',
  '5-41 ltr left word');
</script>