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.editor</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 // Disable 'scayt' plugin due to it may alter editor config after initialized.
\r
12 CKEDITOR.config.removePlugins = 'scayt';
\r
14 CKEDITOR.test.addTestCase( (function()
\r
16 // Local reference to the "assert" object.
\r
17 var assert = CKEDITOR.test.assert;
\r
20 test_name : function()
\r
22 assert.areSame( 'editor1', CKEDITOR.instances.editor1.name );
\r
25 test_element : function()
\r
27 assert.areSame( document.getElementById( 'editor1' ), CKEDITOR.instances.editor1.element.$ );
\r
30 test_config : function()
\r
32 // The instance default config must match the CKEDITOR.config.
\r
34 var config = CKEDITOR.instances.editor1.config;
\r
36 for ( var prop in CKEDITOR.config )
\r
37 assert.areSame( CKEDITOR.config[ prop ], config[ prop ], '"' + prop + '" doesn\'t match' );
\r
40 test_config_inpage : function()
\r
44 CKEDITOR.replace( 'editor2',
\r
46 // The custom setting to be checked.
\r
52 instanceReady : function()
\r
54 self.resume( function()
\r
56 var config = CKEDITOR.instances.editor2.config;
\r
58 assert.areSame( 'ball', config.test1, '"test1" doesn\'t match' );
\r
59 assert.areSame( 'test', config.baseHref, '"baseHref" doesn\'t match' );
\r
61 // All other settings must match CKEDITOR.config.
\r
62 for ( var prop in CKEDITOR.config )
\r
64 if ( prop != 'test1' && prop != 'baseHref' )
\r
65 assert.areSame( CKEDITOR.config[ prop ], config[ prop ], '"' + prop + '" doesn\'t match' );
\r
75 test_config_customConfig : function()
\r
77 var testCase = this;
\r
79 CKEDITOR.on( 'instanceCreated', function( event )
\r
81 if ( event.editor.name == 'editor3' )
\r
83 event.editor.on( 'configLoaded', function()
\r
85 testCase.resume( function()
\r
87 var config = event.editor.config;
\r
89 assert.areSame( 'Ok', config.test_custom1, '"test_custom1" doesn\'t match' );
\r
90 assert.areSame( 'Ok', config.test_custom2, '"test_custom1" doesn\'t match' );
\r
91 assert.areSame( 'ball', config.test1, '"test1" doesn\'t match' );
\r
92 assert.areSame( 'test', config.baseHref, '"baseHref" doesn\'t match' );
\r
94 // All other settings must match CKEDITOR.config.
\r
95 for ( var prop in CKEDITOR.config )
\r
97 if ( prop != 'customConfig' && prop != 'test_custom1' && prop != 'test_custom2' && prop != 'test1' && prop != 'baseHref' )
\r
98 assert.areSame( CKEDITOR.config[ prop ], config[ prop ], '"' + prop + '" doesn\'t match' );
\r
105 // Pass in-page settings to the instance.
\r
106 CKEDITOR.replace( 'editor3', { customConfig : '_editor/custom_config_1.js', test1 : 'ball', baseHref : 'test' } );
\r
111 name : document.title
\r
119 <textarea id="editor1" class="ckeditor" cols="80" rows="10"></textarea>
\r
120 <textarea id="editor2" cols="80" rows="10"></textarea>
\r
121 <textarea id="editor3" cols="80" rows="10"></textarea>
\r