2010-09-14 Ryosuke Niwa <rniwa@webkit.org>
[WebKit-https.git] / LayoutTests / editing / execCommand / script-tests / toggle-style-3.js
1 description("Test to make sure we remove span tags with no attributes if we removed the last attribute.")
2
3 var testContainer = document.createElement("div");
4 testContainer.contentEditable = true;
5 document.body.appendChild(testContainer);
6
7 function testSingleToggle(toggleCommand, initialContents, expectedContents)
8 {
9     testContainer.innerHTML = initialContents;
10     window.getSelection().selectAllChildren(testContainer);
11     document.execCommand(toggleCommand, false, null);
12     if (testContainer.innerHTML === expectedContents) {
13         testPassed("one " + toggleCommand + " command converted " + initialContents + " to " + expectedContents);
14     } else {
15         testFailed("one " + toggleCommand + " command converted " + initialContents + " to " + testContainer.innerHTML + ", expected " + expectedContents);
16     }
17 }
18
19 testSingleToggle("bold", 'hello<b id="test">world</b>', '<b>hello<span id="test">world</span></b>');
20 testSingleToggle("bold", 'hello<b><i>world</i></b>', '<b>hello<i>world</i></b>');
21 testSingleToggle("italic", 'hello <i>world</i> <b>webkit</b>', '<i>hello world <b>webkit</b></i>');
22 testSingleToggle("italic", 'hello <i>world</i> webkit', '<i>hello world webkit</i>');
23
24 document.body.removeChild(testContainer);
25
26 var successfullyParsed = true;