2 Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
\r
3 For licensing, see LICENSE.html or http://ckeditor.com/license
\r
6 /*jsl:import yuitest.js*/
\r
8 // Inject the YUI Test files into the page.
\r
9 // URLs copied from http://developer.yahoo.com/yui/yuitest/
\r
11 '<script type="text/javascript" src="' +
\r
13 '_tests/yuitest.js"></script>' );
\r
16 '<script type="text/javascript" src="' +
\r
19 'core/test.js"></script>' );
\r
23 var createLogger = function()
\r
25 document.body.appendChild( document.createElement( 'div' ) ).id = 'testLogger';
\r
28 var outputResult = function( text )
\r
30 var div = document.getElementById('testLogger').appendChild( document.createElement( 'div' ) );
\r
31 div.className = 'testEntry';
\r
32 div.innerHTML = text;
\r
35 var htmlEncode = function( data )
\r
37 if ( typeof data != 'string' )
\r
40 return data.replace(
\r
41 /&/g, '&' ).replace(
\r
42 /</g, '<' ).replace(
\r
46 window.onload = function()
\r
49 var runner = YAHOO.tool.TestRunner;
\r
51 var handleTestResult = function( data )
\r
55 case runner.TEST_FAIL_EVENT:
\r
57 var expected = data.error.expected;
\r
58 if ( expected && expected.nodeType )
\r
59 expected += ' (' + ( expected.nodeType == 1 ? expected.nodeName : expected.nodeValue ) + ')';
\r
61 var actual = data.error.actual;
\r
62 if ( actual && actual.nodeType )
\r
63 actual += ' (' + ( actual.nodeType == 1 ? actual.nodeName : actual.nodeValue ) + ')';
\r
66 '<span class="testFail">FAIL</span> Test named "' + data.testName +
\r
67 '" failed with message: "' + htmlEncode( data.error.message ) +
\r
68 '".<div>Expected:</div><pre>' + htmlEncode( expected ) +
\r
69 '<br></pre><div>Actual:</div><pre>' + htmlEncode( actual ) + '<br></pre>' );
\r
71 case runner.TEST_PASS_EVENT:
\r
72 outputResult( '<span class="testPass">PASS</span> Test named "' + data.testName + '" passed.' );
\r
74 case runner.TEST_IGNORE_EVENT:
\r
75 outputResult( '<span class="testIgnore">IGNORE</span> Test named "' + data.testName + '" was ignored.' );
\r
80 runner.subscribe(runner.TEST_FAIL_EVENT, handleTestResult);
\r
81 runner.subscribe(runner.TEST_IGNORE_EVENT, handleTestResult);
\r
82 runner.subscribe(runner.TEST_PASS_EVENT, handleTestResult);
\r
84 if ( window.parent && window.parent.onTestStart )
\r
86 runner.subscribe(runner.TEST_CASE_BEGIN_EVENT, window.parent.onTestStart);
\r
87 runner.subscribe(runner.TEST_CASE_COMPLETE_EVENT, window.parent.onTestComplete);
\r
90 if ( !CKEDITOR.test.deferRunner )
\r