@@ -110,15 +110,32 @@ export class StaticTestsTreeBuilder extends BaseTestsTreeBuilder {
110110 switch ( status ) {
111111 case TestStatus . FAIL :
112112 case TestStatus . ERROR : {
113+ if ( this . _passedTestIds [ testIdWithBrowser ] ) {
114+ delete this . _passedTestIds [ testIdWithBrowser ] ;
115+ this . _failedTestIds [ testIdWithBrowser ] = true ;
116+
117+ this . _stats . passed -- ;
118+ this . _stats . failed ++ ;
119+ this . _stats . retries ++ ;
120+
121+ this . _stats . perBrowser [ browserName ] [ version ] . passed -- ;
122+ this . _stats . perBrowser [ browserName ] [ version ] . failed ++ ;
123+ this . _stats . perBrowser [ browserName ] [ version ] . retries ++ ;
124+
125+ return ;
126+ }
127+
113128 if ( this . _failedTestIds [ testIdWithBrowser ] ) {
114129 this . _stats . retries ++ ;
115130 this . _stats . perBrowser [ browserName ] [ version ] . retries ++ ;
116131 return ;
117132 }
118133
119134 this . _failedTestIds [ testIdWithBrowser ] = true ;
135+
120136 this . _stats . failed ++ ;
121137 this . _stats . total ++ ;
138+
122139 this . _stats . perBrowser [ browserName ] [ version ] . failed ++ ;
123140 this . _stats . perBrowser [ browserName ] [ version ] . total ++ ;
124141 return ;
@@ -133,9 +150,12 @@ export class StaticTestsTreeBuilder extends BaseTestsTreeBuilder {
133150
134151 if ( this . _failedTestIds [ testIdWithBrowser ] ) {
135152 delete this . _failedTestIds [ testIdWithBrowser ] ;
153+ this . _passedTestIds [ testIdWithBrowser ] = true ;
154+
136155 this . _stats . failed -- ;
137156 this . _stats . passed ++ ;
138157 this . _stats . retries ++ ;
158+
139159 this . _stats . perBrowser [ browserName ] [ version ] . failed -- ;
140160 this . _stats . perBrowser [ browserName ] [ version ] . passed ++ ;
141161 this . _stats . perBrowser [ browserName ] [ version ] . retries ++ ;
@@ -144,15 +164,59 @@ export class StaticTestsTreeBuilder extends BaseTestsTreeBuilder {
144164 }
145165
146166 this . _passedTestIds [ testIdWithBrowser ] = true ;
167+
147168 this . _stats . passed ++ ;
148169 this . _stats . total ++ ;
170+
149171 this . _stats . perBrowser [ browserName ] [ version ] . passed ++ ;
150172 this . _stats . perBrowser [ browserName ] [ version ] . total ++ ;
151173
152174 return ;
153175 }
154176
155177 case TestStatus . SKIPPED : {
178+ if ( this . _failedTestIds [ testIdWithBrowser ] ) {
179+ delete this . _failedTestIds [ testIdWithBrowser ] ;
180+ this . _skippedTestIds [ testIdWithBrowser ] = true ;
181+
182+ this . _stats . failed -- ;
183+ this . _stats . skipped ++ ;
184+ this . _stats . retries ++ ;
185+
186+ this . _stats . perBrowser [ browserName ] [ version ] . failed -- ;
187+ this . _stats . perBrowser [ browserName ] [ version ] . skipped ++ ;
188+ this . _stats . perBrowser [ browserName ] [ version ] . retries ++ ;
189+
190+ this . _skips . push ( {
191+ browser : browserName ,
192+ suite : testId ,
193+ comment : testResult . skipReason
194+ } ) ;
195+
196+ return ;
197+ }
198+
199+ if ( this . _passedTestIds [ testIdWithBrowser ] ) {
200+ delete this . _passedTestIds [ testIdWithBrowser ] ;
201+ this . _skippedTestIds [ testIdWithBrowser ] = true ;
202+
203+ this . _stats . passed -- ;
204+ this . _stats . skipped ++ ;
205+ this . _stats . retries ++ ;
206+
207+ this . _stats . perBrowser [ browserName ] [ version ] . passed -- ;
208+ this . _stats . perBrowser [ browserName ] [ version ] . passed -- ;
209+ this . _stats . perBrowser [ browserName ] [ version ] . passed -- ;
210+
211+ this . _skips . push ( {
212+ browser : browserName ,
213+ suite : testId ,
214+ comment : testResult . skipReason
215+ } ) ;
216+
217+ return ;
218+ }
219+
156220 if ( this . _skippedTestIds [ testIdWithBrowser ] ) {
157221 this . _stats . retries ++ ;
158222 this . _stats . perBrowser [ browserName ] [ version ] . retries ++ ;
@@ -170,13 +234,6 @@ export class StaticTestsTreeBuilder extends BaseTestsTreeBuilder {
170234 this . _stats . skipped ++ ;
171235 this . _stats . perBrowser [ browserName ] [ version ] . skipped ++ ;
172236
173- if ( this . _failedTestIds [ testIdWithBrowser ] ) {
174- delete this . _failedTestIds [ testIdWithBrowser ] ;
175- this . _stats . failed -- ;
176- this . _stats . perBrowser [ browserName ] [ version ] . failed -- ;
177- return ;
178- }
179-
180237 this . _stats . total ++ ;
181238 this . _stats . perBrowser [ browserName ] [ version ] . total ++ ;
182239 }
0 commit comments