@@ -8,7 +8,18 @@ import { Application, ApplicationOptions, Logger, Quality } from '../../../../au
8
8
import { createApp , timeout , installDiagnosticsHandler , installAppAfterHandler , getRandomUserDataDir , suiteLogsPath , suiteCrashPath } from '../../utils' ;
9
9
10
10
export function setup ( ensureStableCode : ( ) => string | undefined , logger : Logger ) {
11
- describe ( 'Data Loss (insiders -> insiders)' , ( ) => {
11
+ describe ( 'Data Loss (insiders -> insiders)' , function ( ) {
12
+
13
+ // There are cases where `exitApplication` does not actually
14
+ // stop the application and our attempt then to `kill` the
15
+ // process tree results in data loss / state loss. All these
16
+ // tests here rely on state getting persisted properly, so
17
+ // until we have figured out the root cause, we retry these
18
+ // tests.
19
+ // See: https://github.com/microsoft/vscode/issues/157979
20
+ if ( process . platform === 'darwin' ) {
21
+ this . retries ( 2 ) ;
22
+ }
12
23
13
24
let app : Application | undefined = undefined ;
14
25
@@ -130,7 +141,18 @@ export function setup(ensureStableCode: () => string | undefined, logger: Logger
130
141
}
131
142
} ) ;
132
143
133
- describe ( 'Data Loss (stable -> insiders)' , ( ) => {
144
+ describe ( 'Data Loss (stable -> insiders)' , function ( ) {
145
+
146
+ // There are cases where `exitApplication` does not actually
147
+ // stop the application and our attempt then to `kill` the
148
+ // process tree results in data loss / state loss. All these
149
+ // tests here rely on state getting persisted properly, so
150
+ // until we have figured out the root cause, we retry these
151
+ // tests.
152
+ // See: https://github.com/microsoft/vscode/issues/157979
153
+ if ( process . platform === 'darwin' ) {
154
+ this . retries ( 2 ) ;
155
+ }
134
156
135
157
let insidersApp : Application | undefined = undefined ;
136
158
let stableApp : Application | undefined = undefined ;
0 commit comments