annotate DataTables-1.9.4/media/unit_testing/controller.js @ 2:3c160414da2e default tip

initial upload
author shiltemann
date Thu, 26 Feb 2015 14:05:23 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
3c160414da2e initial upload
shiltemann
parents:
diff changeset
1 var giTotalTestCount = 0;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
2 var giActiveModule = 0;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
3 var giModuleTests;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
4 var giStartTime;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
5 var giTest;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
6 var gbStop = false;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
7 var gtoTest;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
8
3c160414da2e initial upload
shiltemann
parents:
diff changeset
9 function fnTestStart ( sTestInfo )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
10 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
11 gaoTest[ giActiveModule ].iTests++;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
12 document.getElementById('test_info').innerHTML +=
3c160414da2e initial upload
shiltemann
parents:
diff changeset
13 (giActiveModule+1)+'.'+(giModuleTests+1)+'. '+sTestInfo+'... ';
3c160414da2e initial upload
shiltemann
parents:
diff changeset
14 document.getElementById('test_number').innerHTML = giTotalTestCount+1;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
15 giModuleTests++;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
16 giTotalTestCount++;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
17
3c160414da2e initial upload
shiltemann
parents:
diff changeset
18 /* Set a timer to catch stalled script */
3c160414da2e initial upload
shiltemann
parents:
diff changeset
19 gtoTest = setTimeout( function () {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
20 fnMessage( '<span class="error">WARNING - test script stalled. Likely a JS error</span>' );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
21 gbStop = true;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
22 }, 3000 );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
23 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
24
3c160414da2e initial upload
shiltemann
parents:
diff changeset
25 function fnTestResult ( bResult )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
26 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
27 clearTimeout( gtoTest );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
28 if ( bResult )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
29 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
30 fnMessage( 'Passed' );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
31 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
32 else
3c160414da2e initial upload
shiltemann
parents:
diff changeset
33 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
34 fnMessage( '<span class="error">FAILED</span>' );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
35 gbStop = true;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
36 fnEnd( false );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
37 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
38 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
39
3c160414da2e initial upload
shiltemann
parents:
diff changeset
40 function fnUnitStart( iTest )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
41 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
42 if ( !gbStop )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
43 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
44 giModuleTests = 0;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
45 window.parent.test_arena.location.href =
3c160414da2e initial upload
shiltemann
parents:
diff changeset
46 (iTest==0?"":"../")+'templates/'+gaoTest[iTest].sTemplate+'.php?scripts='+gaoTest[iTest].sTest;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
47 giTest = iTest;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
48 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
49 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
50
3c160414da2e initial upload
shiltemann
parents:
diff changeset
51 function fnStartMessage( sMessage )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
52 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
53 fnMessage( '<br><b>'+gaoTest[giTest].sGroup+' - '+sMessage+'</b>' );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
54 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
55
3c160414da2e initial upload
shiltemann
parents:
diff changeset
56 function fnMessage( sMessage )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
57 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
58 var nInfo = document.getElementById('test_info');
3c160414da2e initial upload
shiltemann
parents:
diff changeset
59 nInfo.innerHTML += sMessage+'<br>';
3c160414da2e initial upload
shiltemann
parents:
diff changeset
60 nInfo.scrollTop = nInfo.scrollHeight;
3c160414da2e initial upload
shiltemann
parents:
diff changeset
61 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
62
3c160414da2e initial upload
shiltemann
parents:
diff changeset
63 function fnUnitComplete()
3c160414da2e initial upload
shiltemann
parents:
diff changeset
64 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
65 if ( giActiveModule < gaoTest.length - 1 )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
66 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
67 fnUnitStart( ++giActiveModule );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
68 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
69 else
3c160414da2e initial upload
shiltemann
parents:
diff changeset
70 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
71 fnEnd( true );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
72 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
73 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
74
3c160414da2e initial upload
shiltemann
parents:
diff changeset
75 function fnEnd( bSuccess )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
76 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
77 var iEndTime = new Date().getTime();
3c160414da2e initial upload
shiltemann
parents:
diff changeset
78 var sTime = '<br>This test run took '+parseInt((iEndTime-giStartTime)/1000, 10)+
3c160414da2e initial upload
shiltemann
parents:
diff changeset
79 ' second(s) to complete.';
3c160414da2e initial upload
shiltemann
parents:
diff changeset
80
3c160414da2e initial upload
shiltemann
parents:
diff changeset
81 if ( bSuccess )
3c160414da2e initial upload
shiltemann
parents:
diff changeset
82 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
83 $('#test_running').html( 'Tests complete. '+giTotalTestCount+' tests were run.'+sTime );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
84 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
85 else
3c160414da2e initial upload
shiltemann
parents:
diff changeset
86 {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
87 $('#test_running').html( 'Unit tests failed at test '+giTotalTestCount+'.'+sTime );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
88 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
89 }
3c160414da2e initial upload
shiltemann
parents:
diff changeset
90
3c160414da2e initial upload
shiltemann
parents:
diff changeset
91 $(document).ready( function () {
3c160414da2e initial upload
shiltemann
parents:
diff changeset
92 giStartTime = new Date().getTime();
3c160414da2e initial upload
shiltemann
parents:
diff changeset
93 fnUnitStart( giActiveModule );
3c160414da2e initial upload
shiltemann
parents:
diff changeset
94 } );