@@ -64,7 +64,6 @@ const CAUSE_TREE = 'upstreamBuild,upstreamProject,shortDescription,_class';
64
64
const RUN_TREE = `actions[causes[${ CAUSE_TREE } ]],builtOn` ;
65
65
66
66
// hudson.tasks.test.MatrixTestResult
67
-
68
67
const RESULT_TREE = 'result[suites[cases[name,status]]]' ;
69
68
const CITGM_REPORT_TREE =
70
69
`failCount,skipCount,totalCount,childReports[child[url],${ RESULT_TREE } ]` ;
@@ -761,9 +760,11 @@ class CITGMBuild extends TestBuild {
761
760
}
762
761
763
762
async getResults ( ) {
763
+ const { id } = this ;
764
+
764
765
let headerData ;
765
766
try {
766
- headerData = await this . getBuildData ( 'Header ' ) ;
767
+ headerData = await this . getBuildData ( 'Summary ' ) ;
767
768
} catch ( err ) {
768
769
this . failures = [
769
770
new NCUFailure ( { url : this . apiUrl } , err . message )
@@ -777,43 +778,51 @@ class CITGMBuild extends TestBuild {
777
778
// CITGM jobs store results in a different location than
778
779
// they do summary data, so we need to update the endpoint
779
780
// and issue a second API call in order to fetch result data.
780
- this . updateAPIVariables ( ) ;
781
+ this . tree = CITGM_REPORT_TREE ;
782
+ this . path = `job/citgm-smoker/${ this . id } /testReport/` ;
781
783
782
784
let resultData ;
783
785
try {
784
- resultData = await this . getBuildData ( 'Report ' ) ;
786
+ resultData = await this . getBuildData ( 'Results ' ) ;
785
787
} catch ( err ) {
786
788
this . failures = [
787
789
new NCUFailure ( { url : this . apiUrl } , err . message )
788
790
] ;
789
791
return this . failures ;
790
792
}
791
793
792
- const { childReports } = resultData ;
794
+ this . results = this . parseResults ( resultData . childReports ) ;
793
795
794
- this . results = this . parseResults ( childReports ) ;
796
+ // Update id again so that it correctly displays in Summary output.
797
+ this . path = `job/citgm-smoker/${ id } /` ;
795
798
796
799
return { result } ;
797
800
}
798
801
802
+ formatAsJson ( ) {
803
+ const { results } = this ;
804
+
805
+ const result = results . all . map ( item => Object . assign ( {
806
+ source : this . sourceURL ,
807
+ upstream : this . jobUrl
808
+ } , item ) ) ;
809
+
810
+ return JSON . parse ( JSON . stringify ( result ) ) ;
811
+ }
812
+
799
813
parseResults ( data ) {
800
- const results = { passes : [ ] , failures : [ ] , skips : [ ] , fixes : [ ] } ;
814
+ const results = { all : [ ] , failures : [ ] } ;
815
+
801
816
data . forEach ( platform => {
802
817
const cases = flatten ( platform . result . suites [ 0 ] . cases ) ;
803
818
const nodeName = getNodeName ( platform . child . url ) ;
804
819
805
- const passedModules = cases . filter ( c => c . status === 'PASSED' ) ;
806
- results . passes . push ( { [ nodeName ] : passedModules } ) ;
820
+ results . all . push ( { [ nodeName ] : cases } ) ;
807
821
808
822
const failedModules = cases . filter ( c => c . status === 'FAILED' ) ;
809
823
results . failures . push ( { [ nodeName ] : failedModules } ) ;
810
-
811
- const skippedModules = cases . filter ( c => c . status === 'SKIPPED' ) ;
812
- results . skips . push ( { [ nodeName ] : skippedModules } ) ;
813
-
814
- const fixedModules = cases . filter ( c => c . status === 'FIXED' ) ;
815
- results . fixes . push ( { [ nodeName ] : fixedModules } ) ;
816
824
} ) ;
825
+
817
826
return results ;
818
827
}
819
828
@@ -831,11 +840,6 @@ class CITGMBuild extends TestBuild {
831
840
console . table ( output ) ;
832
841
}
833
842
834
- updateAPIVariables ( ) {
835
- this . tree = CITGM_REPORT_TREE ;
836
- this . path = `job/citgm-smoker/${ this . id } /testReport/` ;
837
- }
838
-
839
843
display ( ) {
840
844
this . displayHeader ( ) ;
841
845
this . displayBuilds ( ) ;
0 commit comments