@@ -109,7 +109,7 @@ describe('ResultsTreeBuilder', () => {
109109 ) ;
110110 } ) ;
111111
112- it ( 'should transform root suite into child suite' , ( ) => {
112+ it ( 'should transform root suite into non-root suite' , ( ) => {
113113 builder . addTestResult ( mkFormattedResult_ ( { testPath : [ 's1 s2' , 's3' ] } ) ) ;
114114
115115 assert . deepEqual (
@@ -140,6 +140,56 @@ describe('ResultsTreeBuilder', () => {
140140 }
141141 ) ;
142142 } ) ;
143+
144+ it ( 'should transform suite into child suite' , ( ) => {
145+ builder . addTestResult ( mkFormattedResult_ ( { testPath : [ 's1' , 's2 s3' , 's4' ] } ) ) ;
146+
147+ assert . deepEqual (
148+ builder . tree . suites . byId [ 's1 s2 s3' ] ,
149+ {
150+ id : 's1 s2 s3' ,
151+ name : 's2 s3' ,
152+ parentId : 's1' ,
153+ root : false ,
154+ suitePath : [ 's1' , 's2 s3' ] ,
155+ status : SUCCESS ,
156+ suiteIds : [ 's1 s2 s3 s4' ]
157+ }
158+ ) ;
159+
160+ builder . addTestResult ( mkFormattedResult_ ( { testPath : [ 's1' , 's2' , 's3' , 's5' ] } ) ) ;
161+
162+ assert . deepEqual (
163+ builder . tree . suites . byId [ 's1 s2 s3' ] ,
164+ {
165+ id : 's1 s2 s3' ,
166+ name : 's3' ,
167+ parentId : 's1 s2' ,
168+ root : false ,
169+ suitePath : [ 's1' , 's2' , 's3' ] ,
170+ status : SUCCESS ,
171+ suiteIds : [ 's1 s2 s3 s4' , 's1 s2 s3 s5' ]
172+ }
173+ ) ;
174+ } ) ;
175+
176+ it ( 'should merge suite into existing one' , ( ) => {
177+ builder . addTestResult ( mkFormattedResult_ ( { testPath : [ 's1' , 's2' , 's3' , 's4' ] } ) ) ;
178+ builder . addTestResult ( mkFormattedResult_ ( { testPath : [ 's1' , 's2 s3' , 's5' ] } ) ) ;
179+
180+ assert . deepEqual (
181+ builder . tree . suites . byId [ 's1 s2 s3' ] ,
182+ {
183+ id : 's1 s2 s3' ,
184+ name : 's3' ,
185+ parentId : 's1 s2' ,
186+ root : false ,
187+ suitePath : [ 's1' , 's2' , 's3' ] ,
188+ status : SUCCESS ,
189+ suiteIds : [ 's1 s2 s3 s4' , 's1 s2 s3 s5' ]
190+ }
191+ ) ;
192+ } ) ;
143193 } ) ;
144194
145195 describe ( '"browsers" field in the tree' , ( ) => {
0 commit comments