| <!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 def<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">|abc def<br><br><br>uvw xyz</div>', |
| '1-0 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">a|bc def<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">|abc def<br><br><br>uvw xyz</div>', |
| '1-1 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">ab|c def<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">|abc def<br><br><br>uvw xyz</div>', |
| '1-2 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc| def<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">|abc def<br><br><br>uvw xyz</div>', |
| '1-3 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc |def<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">|abc def<br><br><br>uvw xyz</div>', |
| '1-4 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc d|ef<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc |def<br><br><br>uvw xyz</div>', |
| '1-5 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc de|f<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc |def<br><br><br>uvw xyz</div>', |
| '1-6 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def|<br><br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc |def<br><br><br>uvw xyz</div>', |
| '1-7 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br>|<br><br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def|<br><br><br>uvw xyz</div>', |
| '1-8 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br>|<br>uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br>|<br><br>uvw xyz</div>', |
| '1-9 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>|uvw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br>|<br>uvw xyz</div>', |
| '1-10 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>u|vw xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>|uvw xyz</div>', |
| '1-11 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uv|w xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>|uvw xyz</div>', |
| '1-12 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw| xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>|uvw xyz</div>', |
| '1-13 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw |xyz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>|uvw xyz</div>', |
| '1-14 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw x|yz</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw |xyz</div>', |
| '1-15 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw xy|z</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw |xyz</div>', |
| '1-16 ltr left word'); |
| |
| selection_test( |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw xyz|</div>', |
| selection => selection.modify('move', 'left', 'word'), |
| '<div contenteditable dir="ltr">abc def<br><br><br>uvw |xyz</div>', |
| '1-17 ltr left word'); |
| </script> |