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

<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
if (window.internals)
  internals.settings.setEditingBehavior('win');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">|    abc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |abc    def    hij    opq    </div>',
  '35-0 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre"> |   abc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |abc    def    hij    opq    </div>',
  '35-1 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">  |  abc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |abc    def    hij    opq    </div>',
  '35-2 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">   | abc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |abc    def    hij    opq    </div>',
  '35-3 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    |abc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-4 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    a|bc    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-5 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    ab|c    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-6 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc|    def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-7 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc |   def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-8 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc  |  def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-9 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc   | def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  '35-10 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    |def    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-11 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    d|ef    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-12 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    de|f    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-13 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def|    hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-14 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def |   hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-15 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def  |  hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-16 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def   | hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  '35-17 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    |hij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-18 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    h|ij    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-19 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hi|j    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-20 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij|    opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-21 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij |   opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-22 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij  |  opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-23 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij   | opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  '35-24 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    |opq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq|    </div>',
  '35-25 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    o|pq    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq|    </div>',
  '35-26 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    op|q    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq|    </div>',
  '35-27 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq|    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  '35-28 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq |   </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  '35-29 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq  |  </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  '35-30 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq   | </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  '35-31 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    abc    def    hij    opq    |</div>',
  '35-32 left word');
</script>