| OLD | NEW |
| 1 description('Tests to ensure MakeTextWritingDirection* modifies the direction of
text and embed texts properly.'); | 1 description('Tests to ensure MakeTextWritingDirection* modifies the direction of
text and embed texts properly.'); |
| 2 | 2 |
| 3 if (!window.testRunner) | 3 if (!window.testRunner) |
| 4 testFailed('This test requires testRunner'); | 4 testFailed('This test requires testRunner'); |
| 5 if (window.internals) | 5 if (window.internals) |
| 6 internals.settings.setEditingBehavior('win'); | 6 internals.settings.setEditingBehavior('win'); |
| 7 | 7 |
| 8 var testContainer = document.createElement("div"); | 8 var testContainer = document.createElement("div"); |
| 9 testContainer.contentEditable = true; | 9 testContainer.contentEditable = true; |
| 10 document.body.appendChild(testContainer); | 10 document.body.appendChild(testContainer); |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 function selectThirdWord(container) { | 61 function selectThirdWord(container) { |
| 62 document.getSelection().setBaseAndExtent(container, 0, container, 0); | 62 document.getSelection().setBaseAndExtent(container, 0, container, 0); |
| 63 document.getSelection().modify('move', 'forward', 'word'); | 63 document.getSelection().modify('move', 'forward', 'word'); |
| 64 document.getSelection().modify('move', 'forward', 'word'); | 64 document.getSelection().modify('move', 'forward', 'word'); |
| 65 document.getSelection().modify('extend', 'forward', 'word'); | 65 document.getSelection().modify('extend', 'forward', 'word'); |
| 66 return 'third word'; | 66 return 'third word'; |
| 67 } | 67 } |
| 68 | 68 |
| 69 // left to right language | 69 // left to right language |
| 70 modifyWritingDirection('hello world', selectFirstWord, 'Natural', 'hello world')
; | 70 modifyWritingDirection('hello world', selectFirstWord, 'Natural', 'hello world')
; |
| 71 modifyWritingDirection('hello world', selectFirstWord, 'LeftToRight', '<span sty
le="unicode-bidi: embed;">hello </span>world'); | 71 modifyWritingDirection('hello world', selectFirstWord, 'LeftToRight', '<span sty
le="unicode-bidi: isolate;">hello </span>world'); |
| 72 modifyWritingDirection('hello world', selectFirstWord, 'RightToLeft', '<span sty
le="unicode-bidi: embed; direction: rtl;">hello </span>world'); | 72 modifyWritingDirection('hello world', selectFirstWord, 'RightToLeft', '<span sty
le="unicode-bidi: isolate; direction: rtl;">hello </span>world'); |
| 73 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
Natural', '<b>hello world</b> webkit'); | 73 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
Natural', '<b>hello world</b> webkit'); |
| 74 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
LeftToRight', '<b>hello <span style="unicode-bidi: embed;">world</span></b><span
style="unicode-bidi: embed;"> webkit</span>'); | 74 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
LeftToRight', '<b>hello <span style="unicode-bidi: isolate;">world</span></b><sp
an style="unicode-bidi: isolate;"> webkit</span>'); |
| 75 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
RightToLeft', '<b>hello <span style="unicode-bidi: embed; direction: rtl;">world
</span></b><span style="unicode-bidi: embed; direction: rtl;"> webkit</span>'); | 75 modifyWritingDirection('<b>hello world</b> webkit', selectSecondAndThirdWords, '
RightToLeft', '<b>hello <span style="unicode-bidi: isolate; direction: rtl;">wor
ld</span></b><span style="unicode-bidi: isolate; direction: rtl;"> webkit</span>
'); |
| 76 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'Natural', | 76 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'Natural', |
| 77 '<span dir="rtl">hello <span dir="ltr">world </span></spa
n>webkit <span dir="rtl"><span dir="ltr">rocks</span></span>'); | 77 '<span dir="rtl">hello <span dir="ltr">world </span></spa
n>webkit <span dir="rtl"><span dir="ltr">rocks</span></span>'); |
| 78 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'LeftToRight', | 78 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'LeftToRight', |
| 79 '<span dir="rtl">hello <span dir="ltr">world </span></spa
n><span style="unicode-bidi: embed;">webkit </span><span dir="rtl"><span dir="lt
r">rocks</span></span>'); | 79 '<span dir="rtl">hello <span dir="ltr">world </span></spa
n><span style="unicode-bidi: isolate;">webkit </span><span dir="rtl"><span dir="
ltr">rocks</span></span>'); |
| 80 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'RightToLeft', | 80 modifyWritingDirection('<span dir="rtl">hello <span dir="ltr">world webkit rocks
</span></span>', selectThirdWord, 'RightToLeft', |
| 81 '<span dir="rtl">hello <span dir="ltr">world </span>webki
t <span dir="ltr">rocks</span></span>'); | 81 '<span dir="rtl">hello <span dir="ltr">world </span>webki
t <span dir="ltr">rocks</span></span>'); |
| 82 | 82 |
| 83 // right to left language | 83 // right to left language |
| 84 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'Natural', 'هنا
يكتب النص العربي'); | 84 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'Natural', 'هنا
يكتب النص العربي'); |
| 85 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'LeftToRight', '
<span style="unicode-bidi: embed;">هنا </span>يكتب النص العربي'); | 85 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'LeftToRight', '
<span style="unicode-bidi: isolate;">هنا </span>يكتب النص العربي'); |
| 86 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'RightToLeft', '
<span style="unicode-bidi: embed; direction: rtl;">هنا </span>يكتب النص العربي')
; | 86 modifyWritingDirection('هنا يكتب النص العربي', selectFirstWord, 'RightToLeft', '
<span style="unicode-bidi: isolate; direction: rtl;">هنا </span>يكتب النص العربي
'); |
| 87 | 87 |
| 88 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'Natural', '<b>هنا يكتب</b> النص العربي'); | 88 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'Natural', '<b>هنا يكتب</b> النص العربي'); |
| 89 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'LeftToRight', '<b>هنا <span style="unicode-bidi: embed;">يكتب</span></b><span
style="unicode-bidi: embed;"> النص </span>العربي'); | 89 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'LeftToRight', '<b>هنا <span style="unicode-bidi: isolate;">يكتب</span></b><spa
n style="unicode-bidi: isolate;"> النص </span>العربي'); |
| 90 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'RightToLeft', '<b>هنا <span style="unicode-bidi: embed; direction: rtl;">يكتب<
/span></b><span style="unicode-bidi: embed; direction: rtl;"> النص </span>العربي
'); | 90 modifyWritingDirection('<b>هنا يكتب</b> النص العربي', selectSecondAndThirdWords,
'RightToLeft', '<b>هنا <span style="unicode-bidi: isolate; direction: rtl;">يكت
ب</span></b><span style="unicode-bidi: isolate; direction: rtl;"> النص </span>ال
عربي'); |
| 91 | 91 |
| 92 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'Natural', '<div dir="rtl">هنا يكتب النص العربي</div>'); | 92 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'Natural', '<div dir="rtl">هنا يكتب النص العربي</div>'); |
| 93 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'LeftToRight', '<div dir="rtl"><span style="unicode-bidi: embed; direction:
ltr;">هنا </span>يكتب النص العربي</div>'); | 93 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'LeftToRight', '<div dir="rtl"><span style="unicode-bidi: isolate; directio
n: ltr;">هنا </span>يكتب النص العربي</div>'); |
| 94 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'RightToLeft', '<div dir="rtl"><span style="unicode-bidi: embed;">هنا </spa
n>يكتب النص العربي</div>'); | 94 modifyWritingDirection('<div dir="rtl">هنا يكتب النص العربي</div>', selectFirstW
ord, 'RightToLeft', '<div dir="rtl"><span style="unicode-bidi: isolate;">هنا </s
pan>يكتب النص العربي</div>'); |
| 95 | 95 |
| 96 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'Natural', '<div dir="rtl"><b>هنا يكتب</b> النص العربي</di
v>'); | 96 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'Natural', '<div dir="rtl"><b>هنا يكتب</b> النص العربي</di
v>'); |
| 97 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'LeftToRight', '<div dir="rtl"><b>هنا <span style="unicode
-bidi: embed; direction: ltr;">يكتب</span></b><span style="unicode-bidi: embed;
direction: ltr;"> النص </span>العربي</div>'); | 97 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'LeftToRight', '<div dir="rtl"><b>هنا <span style="unicode
-bidi: isolate; direction: ltr;">يكتب</span></b><span style="unicode-bidi: isola
te; direction: ltr;"> النص </span>العربي</div>'); |
| 98 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'RightToLeft', '<div dir="rtl"><b>هنا <span style="unicode
-bidi: embed;">يكتب</span></b><span style="unicode-bidi: embed;"> النص </span>ال
عربي</div>'); | 98 modifyWritingDirection('<div dir="rtl"><b>هنا يكتب</b> النص العربي</div>', selec
tSecondAndThirdWords, 'RightToLeft', '<div dir="rtl"><b>هنا <span style="unicode
-bidi: isolate;">يكتب</span></b><span style="unicode-bidi: isolate;"> النص </spa
n>العربي</div>'); |
| 99 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'Natural', | 99 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'Natural', |
| 100 '<div dir="rtl">هنا <span dir="ltr">يكتب </span>النص <spa
n dir="ltr">العربي</span></div>'); | 100 '<div dir="rtl">هنا <span dir="ltr">يكتب </span>النص <spa
n dir="ltr">العربي</span></div>'); |
| 101 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'LeftToRight', | 101 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'LeftToRight', |
| 102 '<div dir="rtl"><span style="unicode-bidi: embed; directi
on: ltr;">هنا يكتب النص العربي</span></div>'); | 102 '<div dir="rtl"><span style="unicode-bidi: isolate; direc
tion: ltr;">هنا يكتب النص العربي</span></div>'); |
| 103 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'RightToLeft', | 103 modifyWritingDirection('<div dir="rtl">هنا <span dir="ltr">يكتب النص العربي</spa
n></div>', selectThirdWord, 'RightToLeft', |
| 104 '<div dir="rtl">هنا <span dir="ltr">يكتب </span><span sty
le="unicode-bidi: embed;">النص </span><span dir="ltr">العربي</span></div>'); | 104 '<div dir="rtl">هنا <span dir="ltr">يكتب </span><span sty
le="unicode-bidi: isolate;">النص </span><span dir="ltr">العربي</span></div>'); |
| 105 | 105 |
| 106 // bidirectional langauge | 106 // bidirectional langauge |
| 107 modifyWritingDirection('写中文', selectFirstWord, 'Natural', '写中文'); | 107 modifyWritingDirection('写中文', selectFirstWord, 'Natural', '写中文'); |
| 108 modifyWritingDirection('写中文', selectFirstWord, 'LeftToRight', '<span style="unic
ode-bidi: embed;">写</span>中文'); | 108 modifyWritingDirection('写中文', selectFirstWord, 'LeftToRight', '<span style="unic
ode-bidi: isolate;">写</span>中文'); |
| 109 modifyWritingDirection('写中文', selectFirstWord, 'RightToLeft', '<span style="unic
ode-bidi: embed; direction: rtl;">写</span>中文'); | 109 modifyWritingDirection('写中文', selectFirstWord, 'RightToLeft', '<span style="unic
ode-bidi: isolate; direction: rtl;">写</span>中文'); |
| 110 | 110 |
| 111 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'Natural', '
<div dir="rtl">写中文</div>'); | 111 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'Natural', '
<div dir="rtl">写中文</div>'); |
| 112 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'LeftToRight
', '<div dir="rtl"><span style="unicode-bidi: embed; direction: ltr;">写</span>中文
</div>'); | 112 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'LeftToRight
', '<div dir="rtl"><span style="unicode-bidi: isolate; direction: ltr;">写</span>
中文</div>'); |
| 113 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'RightToLeft
', '<div dir="rtl"><span style="unicode-bidi: embed;">写</span>中文</div>'); | 113 modifyWritingDirection('<div dir="rtl">写中文</div>', selectFirstWord, 'RightToLeft
', '<div dir="rtl"><span style="unicode-bidi: isolate;">写</span>中文</div>'); |
| 114 | 114 |
| 115 document.body.removeChild(testContainer); | 115 document.body.removeChild(testContainer); |
| 116 | 116 |
| 117 var successfullyParsed = true; | 117 var successfullyParsed = true; |
| OLD | NEW |