<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
const isMac = navigator.platform.indexOf('Mac') === 0;
const kBehaviors = window.internals ? ['mac', 'win'] : isMac ? ['mac'] : ['win'];
for (const behavior of kBehaviors) {
  if (window.internals) {
    internals.settings.setEditingBehavior(behavior);
    internals.settings.setSelectTrailingWhitespaceEnabled(behavior !== 'mac');
  }

selection_test(
  '<div contenteditable dir="rtl">|Lorem <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">^Lorem| <span dir="ltr">ipsum dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">^Lorem |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-0 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">L|orem <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">L^orem| <span dir="ltr">ipsum dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">L^orem |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-1 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lo|rem <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lo^rem| <span dir="ltr">ipsum dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lo^rem |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-2 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lor|em <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lor^em| <span dir="ltr">ipsum dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lor^em |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-3 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lore|m <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lore^m| <span dir="ltr">ipsum dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lore^m |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-4 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem| <span dir="ltr">ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem^ <span dir="ltr">ipsum| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem^ |<span dir="ltr">ipsum dolor sit</span> amet</div>',
  `${behavior} 4-5 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">|ipsum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">^ipsum| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">^ipsum |dolor sit</span> amet</div>',
  `${behavior} 4-6 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">i|psum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">i^psum| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">i^psum |dolor sit</span> amet</div>',
  `${behavior} 4-7 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ip|sum dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ip^sum| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ip^sum |dolor sit</span> amet</div>',
  `${behavior} 4-8 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ips|um dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ips^um| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ips^um |dolor sit</span> amet</div>',
  `${behavior} 4-9 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsu|m dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsu^m| dolor sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsu^m |dolor sit</span> amet</div>',
  `${behavior} 4-10 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum| dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum^ dolor| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum^ |dolor sit</span> amet</div>',
  `${behavior} 4-11 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum |dolor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum ^dolor| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum ^dolor |sit</span> amet</div>',
  `${behavior} 4-12 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum d|olor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum d^olor| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum d^olor |sit</span> amet</div>',
  `${behavior} 4-13 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum do|lor sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum do^lor| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum do^lor |sit</span> amet</div>',
  `${behavior} 4-14 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dol|or sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dol^or| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dol^or |sit</span> amet</div>',
  `${behavior} 4-15 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolo|r sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolo^r| sit</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolo^r |sit</span> amet</div>',
  `${behavior} 4-16 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor| sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor^ sit|</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor^ |sit</span> amet</div>',
  `${behavior} 4-17 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor |sit</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor ^sit|</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor ^sit</span> |amet</div>',
  `${behavior} 4-18 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor s|it</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor s^it|</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor s^it</span> |amet</div>',
  `${behavior} 4-19 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor si|t</span> amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor si^t|</span> amet</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor si^t</span> |amet</div>',
  `${behavior} 4-20 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span>| amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  behavior === 'mac'
      ? '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span>^ amet|</div>'
      : '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span>^ |amet</div>',
  `${behavior} 4-21 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> |amet</div>',
  selection => selection.modify('extend', 'left', 'word'),
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> ^amet|</div>',
  `${behavior} 4-22 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> a|met</div>',
  selection => selection.modify('extend', 'left', 'word'),
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> a^met|</div>',
  `${behavior} 4-23 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> am|et</div>',
  selection => selection.modify('extend', 'left', 'word'),
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> am^et|</div>',
  `${behavior} 4-24 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> ame|t</div>',
  selection => selection.modify('extend', 'left', 'word'),
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> ame^t|</div>',
  `${behavior} 4-25 rtl left word`);

selection_test(
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> amet|</div>',
  selection => selection.modify('extend', 'left', 'word'),
  '<div contenteditable dir="rtl">Lorem <span dir="ltr">ipsum dolor sit</span> amet|</div>',
  `${behavior} 4-26 rtl left word`);
}
</script>
