diff --git a/TestResultSummaryService/parsers/Test.js b/TestResultSummaryService/parsers/Test.js index 291a74b0..b0b6d420 100644 --- a/TestResultSummaryService/parsers/Test.js +++ b/TestResultSummaryService/parsers/Test.js @@ -5,6 +5,10 @@ const regexFinishTime = /(.*?) Finish Time\: .* Epoch Time \(ms\)\: (\d+).*/; const regexStartTime = /(.*?) Start Time\: .* Epoch Time \(ms\)\: (\d+).*/; const TestBenchmarkParser = require(`./TestBenchmarkParser`); const ExternalTestParser = require(`./ExternalTestParser`); +const preTest = 'Pre Test'; +const postTest = 'Post Test'; +const testPassed = 'PASSED'; +const testFailed = 'FAILED'; const Utils = require(`./Utils`); @@ -22,6 +26,20 @@ class Test extends Parser { } async parse(output) { + if (!output) { + return { + tests: [ + { + testName: preTest, + testOutput: '', + testResult: testFailed, + testData: null + } + ], + type: 'Test' + }; + } + const tests = await this.extract(output); const { javaVersion, jdkDate, sdkResource } = this.exactJavaVersion(output); @@ -39,8 +57,6 @@ class Test extends Parser { } async extract(str) { - const preTest = 'Pre Test'; - const postTest = 'Post Test'; let m, testStr, testName, @@ -75,7 +91,7 @@ class Test extends Parser { results.push({ testName: preTest, testOutput: nonTestStr, - testResult: 'PASSED', + testResult: testPassed, testData: null, }); nonTestStr = ''; @@ -127,7 +143,7 @@ class Test extends Parser { results.push({ testName, testOutput: testStr, - testResult: 'FAILED', + testResult: testFailed, testData: null, startTime, }); @@ -136,7 +152,7 @@ class Test extends Parser { results.push({ testName: preTest, testOutput: str, - testResult: 'FAILED', + testResult: testFailed, testData: null, }); } else if (!postTestDone) { @@ -146,8 +162,8 @@ class Test extends Parser { testResult: nonTestStr.match( /Finished: (SUCCESS|UNSTABLE|ABORTED)/ ) - ? 'PASSED' - : 'FAILED', + ? testPassed + : testFailed, testData: null, }); }