1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
\r
2 <html xmlns="http://www.w3.org/1999/xhtml">
\r
4 <title>CKEDITOR.tools</title>
\r
5 <link rel="stylesheet" type="text/css" href="../test.css" />
\r
6 <script type="text/javascript" src="../../ckeditor.js"></script>
\r
7 <script type="text/javascript" src="../test.js"></script>
\r
8 <script type="text/javascript">
\r
11 CKEDITOR.test.addTestCase( testcase = (function()
\r
13 // Local reference to the "assert" object.
\r
14 var assert = CKEDITOR.test.assert;
\r
17 test_extend : function()
\r
19 var fakeFn = function() {};
\r
20 var fakeObj = { fake1 : 1, fake2 : 2 };
\r
21 var fakeArray = [ 'Test', 10, fakeFn, fakeObj ];
\r
32 CKEDITOR.tools.extend( target,
\r
39 assert.areSame( 'Test' , target.prop1, 'prop1 doesn\'t match' );
\r
40 assert.areSame( 10 , target.prop2, 'prop2 doesn\'t match' );
\r
41 assert.areSame( fakeFn , target.prop3, 'prop3 doesn\'t match' );
\r
42 assert.areSame( fakeObj , target.prop4, 'prop4 doesn\'t match' );
\r
43 assert.areSame( fakeArray , target.prop5, 'prop5 doesn\'t match' );
\r
44 assert.areSame( 'Good' , target.prop6, 'prop6 doesn\'t match' );
\r
45 assert.areSame( fakeArray , target.prop7, 'prop7 doesn\'t match' );
\r
48 test_isArray1 : function()
\r
50 assert.isTrue( CKEDITOR.tools.isArray( [] ) );
\r
53 test_isArray2 : function()
\r
55 assert.isFalse( CKEDITOR.tools.isArray( { length:1 } ) );
\r
58 test_isArray3 : function()
\r
60 assert.isFalse( CKEDITOR.tools.isArray( null ) );
\r
63 test_isArray4 : function()
\r
65 assert.isFalse( CKEDITOR.tools.isArray( window.x ) );
\r
68 test_htmlEncode1 : function()
\r
70 assert.areSame( '<b>Test</b>', CKEDITOR.tools.htmlEncode( '<b>Test</b>' ) );
\r
73 test_htmlEncode2 : function()
\r
75 assert.areSame( 'Test\'s & "quote"', CKEDITOR.tools.htmlEncode( 'Test\'s & "quote"' ) );
\r
78 test_htmlEncode_3874 : function()
\r
80 assert.areSame( 'line1\nline2', CKEDITOR.tools.htmlEncode( 'line1\nline2' ) );
\r
83 test_cssStyleToDomStyle1 : function()
\r
85 assert.areSame( 'backgroundColor', CKEDITOR.tools.cssStyleToDomStyle( 'background-color' ) );
\r
88 test_cssStyleToDomStyle2 : function()
\r
90 assert.areSame( 'cssFloat', CKEDITOR.tools.cssStyleToDomStyle( 'float' ) );
\r
93 test_getNextNumber : function()
\r
95 var number = CKEDITOR.tools.getNextNumber();
\r
96 assert.areSame( number + 1, CKEDITOR.tools.getNextNumber() );
\r
97 assert.areSame( number + 2, CKEDITOR.tools.getNextNumber() );
\r
98 assert.areSame( number + 3, CKEDITOR.tools.getNextNumber() );
\r
101 test_trim1 : function()
\r
103 assert.areSame( 'test', CKEDITOR.tools.trim( ' test ' ) );
\r
106 test_trim2 : function()
\r
108 assert.areSame( 'test', CKEDITOR.tools.trim( ' \n \t test\n \t ' ) );
\r
111 test_ltrim1 : function()
\r
113 assert.areSame( 'test ', CKEDITOR.tools.ltrim( ' test ' ) );
\r
116 test_ltrim2 : function()
\r
118 assert.areSame( 'test\n \t ', CKEDITOR.tools.ltrim( ' \n \t test\n \t ' ) );
\r
121 test_rtrim1 : function()
\r
123 assert.areSame( ' test', CKEDITOR.tools.rtrim( ' test ' ) );
\r
126 test_rtrim2 : function()
\r
128 assert.areSame( ' \n \t test', CKEDITOR.tools.rtrim( ' \n \t test\n \t ' ) );
\r
131 test_clone : function()
\r
138 Mercedes : { color : 'blue' },
\r
139 Porsche : { color : 'red' }
\r
143 var clone = CKEDITOR.tools.clone( obj );
\r
145 clone.name = 'Paul';
\r
146 clone.cars.Porsche.color = 'silver';
\r
148 assert.areSame( 'John', obj.name );
\r
149 assert.areSame( 'Paul', clone.name );
\r
151 assert.areSame( 'red', obj.cars.Porsche.color );
\r
152 assert.areSame( 'silver', clone.cars.Porsche.color );
\r
155 test_repeat : function()
\r
157 assert.areSame( ' ', CKEDITOR.tools.repeat( ' ', 3 ) );
\r
160 name : document.title
\r
163 //window.onload = testcase.test_htmlEncode_3874;
\r