22var path = require ( 'path' ) ;
33var exists_1 = require ( './exists' ) ;
44var create_runner_1 = require ( './create-runner' ) ;
5+ var parse_json_1 = require ( './parse-json' ) ;
56var pathToResults = path . resolve ( __dirname , '' , 'report.json' ) ;
6- function formatFailureMessage ( message ) {
7- return message . split ( '_' ) . join ( ' ' ) ;
8- }
97function runner ( testFile , config , handleResult ) {
108 var runner = create_runner_1 . createRunner ( config , testFile ) ;
119 var final = null ;
@@ -17,40 +15,7 @@ function runner(testFile, config, handleResult) {
1715 console . log ( 'error finding test output file: ' , data ) ;
1816 return ;
1917 }
20- var result = JSON . parse ( require ( pathToResults ) ) ;
21- if ( ! result . report || ! result . report . tests . length ) {
22- console . log ( 'error with test output in report.json' ) ;
23- return ;
24- }
25- var finalTest = result . report . tests [ 0 ] ;
26- var taskPosition = parseInt ( finalTest . name . match ( / : : T e s t ( [ 0 - 9 ] + ) / ) [ 1 ] , 10 ) ;
27- if ( ! taskPosition ) {
28- console . log ( 'Error with test. There is no valid task number in the Test class title' ) ;
29- return ;
30- }
31- if ( finalTest . outcome === 'passed' ) {
32- final = {
33- completed : true ,
34- msg : 'Task ${taskPosition} Complete' ,
35- taskPosition : taskPosition + 1
36- } ;
37- }
38- else if ( finalTest . outcome === 'failed' ) {
39- var message = finalTest . name . match ( / : : t e s t _ ( .+ ) $ / ) [ 1 ] ;
40- if ( ! message ) {
41- console . log ( 'Error with test. There is no valid test message' ) ;
42- message = '' ;
43- }
44- final = {
45- completed : false ,
46- msg : formatFailureMessage ( message ) ,
47- taskPosition : taskPosition ,
48- timedOut : false
49- } ;
50- }
51- else {
52- console . log ( 'error processing result: ' , result ) ;
53- }
18+ final = parse_json_1 . parseJson ( pathToResults ) ;
5419 final . change = final . taskPosition - config . taskPosition ;
5520 final . pass = final . change > 0 ;
5621 handleResult ( final ) ;
0 commit comments