JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.0.1
[ckeditor.git] / _tests / plugins / styles / styles.html
diff --git a/_tests/plugins/styles/styles.html b/_tests/plugins/styles/styles.html
deleted file mode 100644 (file)
index 9648cd3..0000000
+++ /dev/null
@@ -1,596 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>Plugin: styles</title>\r
-       <link rel="stylesheet" type="text/css" href="../../test.css" />\r
-       <script type="text/javascript" src="../../../ckeditor.js"></script>\r
-       <script type="text/javascript" src="../../test.js"></script>\r
-       <script type="text/javascript">\r
-\r
-CKEDITOR.plugins.load( [ 'styles', 'domiterator', 'htmldataprocessor' ] );\r
-\r
-       </script>\r
-       <script type="text/javascript">\r
-       //<![CDATA[\r
-\r
-var testCase;\r
-\r
-CKEDITOR.test.addTestCase( testCase = (function()\r
-{\r
-       // Local references.\r
-       var assert                      = CKEDITOR.test.assert;\r
-       var getInnerHtml        = CKEDITOR.test.getInnerHtml;\r
-\r
-       function getInnerHtmlParsed( element )\r
-       {\r
-               var dataProcessor = new CKEDITOR.htmlDataProcessor();\r
-               dataProcessor.writer = new CKEDITOR.htmlParser.basicWriter();\r
-               return dataProcessor.toDataFormat( getInnerHtml( element, false ) );\r
-       }\r
-\r
-       var doc = new CKEDITOR.dom.document( document );\r
-\r
-       return {\r
-               test_inline1 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this is some sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ).getFirst(), 5 );\r
-                       range.setEnd( doc.getById( '_P1' ).getFirst(), 7 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <b>is</b> some sample text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline2 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some </b>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ).getChild( 1 ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 2 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <i><b>is some </b></i>sample text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline3 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some </b>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ).getChild( 1 ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ).getChild( 1 ).getFirst(), 2 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <b><i>is</i> some </b>sample text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               // Inline - Remove inner duplicates.\r
-               test_inline4 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some </b>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 3 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this is some sample text</b>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               // Inline - Merge with next.\r
-               test_inline5 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some </b>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 1 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this is some </b>sample text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               // Inline - Merge with previous.\r
-               test_inline6 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some </b>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 2 );\r
-                       range.setEnd( doc.getById( '_P1' ).getChild( 2 ), 6 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <b>is some sample</b> text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               // Inline - Merge several with next.\r
-               test_inline7 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( '<i><u>this </u></i><b><i><u>is</u> some</i> sample</b> text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 1 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b><i><u>this is</u> some</i> sample</b> text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               // Inline - Merge several with previous.\r
-               test_inline8 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is <i>some <u>sample</u></i></b><i><u> text</u></i>' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 2 );\r
-                       range.setEnd( doc.getById( '_P1' ), 3 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <b>is <i>some <u>sample text</u></i></b>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline9 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <i>is some </i>sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ).getChild( 1 ), 0 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this </b><i>is some </i>sample text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline10 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this is some sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 1 );\r
-\r
-                       var style = new CKEDITOR.style(\r
-                               {\r
-                                       element : 'b',\r
-                                       attributes :\r
-                                               {\r
-                                                       lang : 'it',\r
-                                                       title : 'test'\r
-                                               },\r
-                                       styles :\r
-                                               {\r
-                                                       'font-size' : '10pt',\r
-                                                       'text-decoration' : 'line-through'\r
-                                               }\r
-                               } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b lang="it" style="font-size:10pt;text-decoration:line-through;" title="test">this is some sample text</b>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline11 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b lang="it" class="sample">is</b> <b lang="it" style="font-size: 10pt; text-decoration: line-through;" title="test">some sample</b> <b>t</b>ext' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 7 );\r
-\r
-                       var style = new CKEDITOR.style(\r
-                               {\r
-                                       element : 'b',\r
-                                       attributes :\r
-                                               {\r
-                                                       lang : 'it',\r
-                                                       title : 'test'\r
-                                               },\r
-                                       styles :\r
-                                               {\r
-                                                       'font-size' : '10pt',\r
-                                                       'text-decoration' : 'line-through'\r
-                                               }\r
-                               } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b lang="it" style="font-size: 10pt; text-decoration: line-through;" title="test">this <b class="sample">is</b> some sample text</b>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline11 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <span class="a">is</span> some <span class="b">sample</span> text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 5 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', attributes : { 'class' : 'b' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<span class="b">this <span class="a">is</span> some sample text</span>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline12 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <span style="font-size:12pt; font-weight:600">is</span> some <span style="font-size:10px;">sample</span> text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ), 5 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', styles : { 'font-size' : '1.5em' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<span style="font-size:1.5em;">this <span style="font-weight:600;">is</span> some sample text</span>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline13 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this <b>is some sample</b> text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ).getChild( 1 ).getFirst(), 3 );\r
-                       range.setEnd( doc.getById( '_P1' ), 3 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this <b>is <i>some sample</i></b><i> text</i>', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_inline14 : function()\r
-               {\r
-                       var para = doc.getById( '_P1' );\r
-\r
-                       para.setHtml( 'this is some sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( para.getFirst(), 0 );\r
-                       range.setEnd( para.getFirst(), 7 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this is</b> some sample text', getInnerHtml( '_P1' ), 'First range' );\r
-\r
-                       para.setHtml( para.getHtml() );\r
-\r
-                       range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( para.getFirst().getFirst(), 5 );\r
-                       range.setEnd( para.getChild( 1 ), 5 );\r
-\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this is some</b> sample text', getInnerHtml( '_P1' ), 'Second range' );\r
-               },\r
-\r
-               test_inline15 : function()\r
-               {\r
-                       var para = doc.getById( '_P1' );\r
-\r
-                       para.setHtml( 'this is some sample text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( para.getFirst(), 0 );\r
-                       range.setEnd( para.getFirst(), 7 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', styles : { 'font-family' : '#(family)' } }, { family : 'Arial,Helvetica,sans-serif' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<span style="font-family:arial,helvetica,sans-serif;">this is</span> some sample text', getInnerHtml( '_P1' ), 'First range' );\r
-\r
-                       para.setHtml( para.getHtml() );\r
-\r
-                       range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( para.getFirst().getFirst(), 5 );\r
-                       range.setEnd( para.getChild( 1 ), 5 );\r
-\r
-                       style = new CKEDITOR.style( { element : 'span', styles : { 'font-family' : '#(family)' } }, { family : 'Georgia,serif' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<span style="font-family:arial,helvetica,sans-serif;">this <span style="font-family:georgia,serif;">is</span></span><span style="font-family:georgia,serif;"> some</span> sample text', getInnerHtml( '_P1' ), 'Second range' );\r
-               },\r
-\r
-               test_inline16 : function()\r
-               {\r
-                       var para = doc.getById( '_P1' );\r
-\r
-                       para.setHtml( '<b lang="pt" style="font-size:11pt;color:red;">this is some sample text</b>' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( para.getFirst().getFirst(), 4 );\r
-                       range.setEnd( para.getFirst(), 10 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b', styles : { color : 'red', 'font-weight' : '700' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b lang="pt" style="color:red;font-size:11pt;">this<b style="font-weight:700;"> is some sample text</b></b>', getInnerHtml( '_P1' ), 'First range' );\r
-               },\r
-\r
-               test_inline_nobreak1 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'this is <a href="http://example.com/">some sample</a> text' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 0 );\r
-                       range.setEnd( doc.getById( '_P1' ).getChild( 1 ).getFirst(), 4 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<b>this is </b><a href="http://example.com/"><b>some</b> sample</a> text', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_ticket_2040 : function()\r
-               {\r
-                       doc.getById( '_P1' ).setHtml( 'This is some <strong>sample text<\/strong>. You are using <a href="http://www.fckeditor.net/">ckeditor<\/a>.' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStart( doc.getById( '_P1' ), 1 );\r
-                       range.setEnd( doc.getById( '_P1' ).getChild( 1 ).getFirst(), 6 );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( 'this is some <strong><i>sample</i> text<\/strong>. you are using <a href="http://www.fckeditor.net/">ckeditor<\/a>.', getInnerHtml( '_P1' ) );\r
-               },\r
-\r
-               test_checkElementRemovable1 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<b>Test</b>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-\r
-                       assert.isTrue( style.checkElementRemovable( element ) );\r
-               },\r
-\r
-               test_checkElementRemovable2 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<b>Test</b>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i' } );\r
-\r
-                       assert.isFalse( style.checkElementRemovable( element ) );\r
-               },\r
-\r
-               test_checkElementRemovable3 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<b>Test</b>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b', attributes : { lang : 'pt' } } );\r
-\r
-                       assert.isTrue( style.checkElementRemovable( element ) );\r
-               },\r
-\r
-               test_checkElementRemovable4 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<b>Test</b>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b', attributes : { lang : 'pt' } } );\r
-\r
-                       assert.isFalse( style.checkElementRemovable( element, true ) );\r
-               },\r
-\r
-               test_checkElementRemovable5 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<span lang="pt" style="color : #fff">Test</span>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', attributes : { lang : 'pt' }, style : { color : '#ffffff' } } );\r
-\r
-                       assert.isTrue( style.checkElementRemovable( element, true ) );\r
-               },\r
-\r
-               test_checkElementRemovable6 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<span lang="pt" style="color : #fff">Test</span>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', attributes : { lang : 'pt' }, style : { color : '#fffff0' } } );\r
-\r
-                       assert.isTrue( style.checkElementRemovable( element, true ) );\r
-               },\r
-\r
-               test_checkElementRemovable7 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<span lang="pt" style="color : #fff">Test</span>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', attributes : { lang : 'fr' }, style : { color : '#ffffff' } } );\r
-\r
-                       assert.isFalse( style.checkElementRemovable( element, true ) );\r
-               },\r
-\r
-               test_checkElementRemovable8 : function()\r
-               {\r
-                       var element = CKEDITOR.dom.element.createFromHtml( '<span lang="pt" style="font-size: 10px">Test</span>', doc );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'span', attributes : { lang : 'pt' , style : 'font-size:10px;' } } );\r
-\r
-                       assert.isTrue( style.checkElementRemovable( element, true ) );\r
-               },\r
-\r
-               test_ticket_3091 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( 'outter<table><tr><td>text</td></tr></table>outter' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.selectNodeContents( element );\r
-\r
-                       var styleDef =\r
-                       {\r
-                               element         : 'span',\r
-                               styles          : { 'font-family' : '#(family)' },\r
-                               overrides       : [ { element : 'font', attributes : { 'face' : null } } ]\r
-                       };\r
-\r
-                       var style = new CKEDITOR.style( styleDef, { 'family' : 'Arial,Helvetica,sans-serif' } );\r
-                       style.applyToRange( range );\r
-\r
-                       style = new CKEDITOR.style( styleDef, { 'family' : 'Comic Sans MS,cursive' } );\r
-                       style.applyToRange( range );\r
-\r
-                       style = new CKEDITOR.style( styleDef, { 'family' : 'Courier New,Courier,monospace' } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<span style="font-family:couriernew,courier,monospace;">outter</span><table><tbody><tr><td><span style="font-family:couriernew,courier,monospace;">text</span></td></tr></tbody></table><span style="font-family:couriernew,courier,monospace;">outter</span>', getInnerHtml( element ) );\r
-               },\r
-\r
-               test_ticket_3091_2 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( 'outter<p>text</p>outter' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.selectNodeContents( element );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i', attributes : { title : 'x' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<i title="x">outter</i><p><i title="x">text</i></p><i title="x">outter</i>', getInnerHtml( element ), 'First step failed' );\r
-\r
-                       style = new CKEDITOR.style( { element : 'i', attributes : { title : 'y' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<i title="y">outter</i><p><i title="y">text</i></p><i title="y">outter</i>', getInnerHtml( element ), 'Second step failed' );\r
-\r
-                       style = new CKEDITOR.style( { element : 'i', attributes : { title : 'z' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<i title="z">outter</i><p><i title="z">text</i></p><i title="z">outter</i>', getInnerHtml( element ), 'Third step failed' );\r
-               },\r
-\r
-               // TC based on the state of the second step in the above test, before it got fixed.\r
-               test_ticket_3091_3 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( '<p><i title="y">text</i><i title="x"></i></p><i title="y">outter</i><i title="x"></i>' );\r
-\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.selectNodeContents( element );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'i', attributes : { title : 'z' } } );\r
-                       style.applyToRange( range );\r
-\r
-                       assert.areSame( '<p><i title="z">text</i></p><i title="z">outter</i>', getInnerHtml( element ) );\r
-               },\r
-\r
-               // Remove inline style when range collapsed at element boundaries,\r
-               // move out of the removing-style element, with inner style copied.\r
-               test_ticket_3309 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( 'this is some <b><i id="_i1">styles</i></b> text' );\r
-\r
-                       // This is some <b><i>styles^</i></b> text\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStartAt( doc.getById( '_i1' ), CKEDITOR.POSITION_BEFORE_END );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.removeFromRange( range );\r
-\r
-                       assert.areSame( 'this is some <b><i id="_i1">styles</i></b><i></i> text', getInnerHtml( element ) );\r
-               },\r
-\r
-               // No inner style preserved, simply move out of the removing-style element.\r
-               test_ticket_3309_2 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( 'this is some <b id="_b1">styles</b> text' );\r
-\r
-                       // This is some <b>styles^</b> text\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStartAt( doc.getById( '_b1' ), CKEDITOR.POSITION_BEFORE_END );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' } );\r
-                       style.removeFromRange( range );\r
-                       // This is some <b>styles</b>^ text\r
-                       assert.areSame( doc.getById( '_b1' ).getParent().$, range.startContainer.$ );\r
-                       assert.areSame( 2, range.startOffset );\r
-                       assert.areSame( 'this is some <b id="_b1">styles</b> text', getInnerHtml( element ) );\r
-               },\r
-\r
-               // With style overrides.\r
-               test_ticket_3309_3 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( 'text <strong><bold><span><b><i id="_i1">styles</i></b></span></bold></strong>' );\r
-\r
-                       // text <strong><bold><span><b><i id="_i1">^styles</i></b></span></bold></strong>\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStartAt( doc.getById( '_i1' ), CKEDITOR.POSITION_AFTER_START );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'b' , overrides : [ 'strong', 'bold' ] } );\r
-                       style.removeFromRange( range );\r
-\r
-                       // text <span><i>^</i></span><bold><span><b><i>styles</i></b></span></bold>\r
-                       assert.areSame( 'text <span><i></i></span><strong><bold><span><b><i id="_i1">styles</i></b></span></bold></strong>', getInnerHtml( element ) );\r
-               },\r
-\r
-               // Test convert multiple paragraphs to one <pre>.\r
-               test_ticket_3188 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( '<p id="_P2">\nparagraph1<br /><br />para\t\ngraph2</p><p id="_P3">\nparagraph3\n</p>' );\r
-\r
-                       // <p id="_P2">[paragraph1</p><p id="_P3">paragraph2]</p>\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.setStartAt( doc.getById( '_P2' ), CKEDITOR.POSITION_AFTER_START );\r
-                       range.setEndAt( doc.getById( '_P3' ), CKEDITOR.POSITION_BEFORE_END );\r
-\r
-                       var style = new CKEDITOR.style( { element : 'pre' } );\r
-                       style.applyToRange( range );\r
-\r
-                       var result = getInnerHtmlParsed( element );\r
-                       assert.areSame( '<pre>paragraph1\n\npara graph2\n\nparagraph3</pre>', result );\r
-               },\r
-\r
-               // Test convert one <pre> to multiple paragraphs.\r
-               test_ticket_3188_2 : function()\r
-               {\r
-                       var element = doc.getById( '_P1' );\r
-                       element.setHtml( '<pre>\n\tparagraph1\t\tparagraph1\nparagraph2\n\t\n\tpara   graph3\n</pre>' );\r
-\r
-                       //<pre>[\n\tparagraph1\t\tparagraph1\nparagraph2\n\t\n\tpara   graph3\n]</pre>\r
-                       var range = new CKEDITOR.dom.range( doc );\r
-                       range.selectNodeContents( doc.getById( '_P1' ).getFirst() );\r
-                       var style = new CKEDITOR.style( { element : 'p' } );\r
-                       style.applyToRange( range );\r
-\r
-                       var result = getInnerHtmlParsed( element );\r
-\r
-                       if ( CKEDITOR.env.webkit || CKEDITOR.env.opera )\r
-                               result = result.replace( /\xa0/g, '&nbsp;' );\r
-\r
-                       assert.areSame( '<p>&nbsp;paragraph1&nbsp; paragraph1<br />paragraph2</p><p>&nbsp;para&nbsp;&nbsp; graph3</p>',\r
-                                        result );\r
-               },\r
-               name : document.title\r
-       };\r
-})() );\r
-//window.onload = testCase.test_ticket_3188;\r
-       //]]>\r
-       </script>\r
-</head>\r
-<body>\r
-       <div id="_P1"></div>\r
-</body>\r
-</html>\r