@@ -64,6 +64,15 @@ describe('validateTesting', () => {
6464 } ) ;
6565
6666 describe ( 'browserHeadless' , ( ) => {
67+ const originalCI = process . env . CI ;
68+ beforeEach ( ( ) => {
69+ delete process . env . CI ;
70+ } ) ;
71+
72+ afterEach ( ( ) => {
73+ process . env . CI = originalCI ;
74+ } ) ;
75+
6776 describe ( "using 'headless' value from cli" , ( ) => {
6877 it . each ( [ false , 'shell' ] ) ( 'sets browserHeadless to %s' , ( headless ) => {
6978 userConfig . flags = { ...flags , e2e : true , headless } ;
@@ -129,6 +138,15 @@ describe('validateTesting', () => {
129138 } ) ;
130139
131140 describe ( 'devTools' , ( ) => {
141+ const originalCI = process . env . CI ;
142+ beforeEach ( ( ) => {
143+ delete process . env . CI ;
144+ } ) ;
145+
146+ afterEach ( ( ) => {
147+ process . env . CI = originalCI ;
148+ } ) ;
149+
132150 it ( 'ignores devTools settings if CI is enabled' , ( ) => {
133151 userConfig . flags = { ...flags , ci : true , devtools : true , e2e : true } ;
134152 userConfig . testing = { } ;
@@ -184,6 +202,15 @@ describe('validateTesting', () => {
184202 } ) ;
185203
186204 describe ( 'browserArgs' , ( ) => {
205+ const originalCI = process . env . CI ;
206+ beforeEach ( ( ) => {
207+ delete process . env . CI ;
208+ } ) ;
209+
210+ afterEach ( ( ) => {
211+ process . env . CI = originalCI ;
212+ } ) ;
213+
187214 it ( 'does not add duplicate default fields' , ( ) => {
188215 userConfig . flags = { ...flags , e2e : true } ;
189216 userConfig . testing = {
@@ -195,12 +222,24 @@ describe('validateTesting', () => {
195222 expect ( config . testing . browserArgs ) . toEqual ( [ '--unique' , '--font-render-hinting=medium' , '--incognito' ] ) ;
196223 } ) ;
197224
198- it ( 'adds default browser args' , ( ) => {
199- userConfig . flags = { ... flags , e2e : true } ;
225+ describe ( 'adds default browser args' , ( ) => {
226+ const originalCI = process . env . CI ;
200227
201- const { config } = validateConfig ( userConfig , mockLoadConfigInit ( ) ) ;
228+ beforeAll ( ( ) => {
229+ delete process . env . CI ;
230+ } ) ;
231+
232+ afterAll ( ( ) => {
233+ process . env . CI = originalCI ;
234+ } ) ;
235+
236+ it ( 'adds default browser args when not in CI' , ( ) => {
237+ userConfig . flags = { ...flags , e2e : true } ;
238+
239+ const { config } = validateConfig ( userConfig , mockLoadConfigInit ( ) ) ;
202240
203- expect ( config . testing . browserArgs ) . toEqual ( [ '--font-render-hinting=medium' , '--incognito' ] ) ;
241+ expect ( config . testing . browserArgs ) . toEqual ( [ '--font-render-hinting=medium' , '--incognito' ] ) ;
242+ } ) ;
204243 } ) ;
205244
206245 it ( "adds additional browser args when the 'ci' flag is set" , ( ) => {
@@ -214,6 +253,58 @@ describe('validateTesting', () => {
214253 '--disable-dev-shm-usage' ,
215254 ] ) ;
216255 } ) ;
256+
257+ describe ( 'adds additional browser args when process.env.CI is set' , ( ) => {
258+ const originalCI = process . env . CI ;
259+ beforeAll ( ( ) => {
260+ process . env . CI = 'true' ;
261+ } ) ;
262+
263+ afterAll ( ( ) => {
264+ process . env . CI = originalCI ;
265+ } ) ;
266+
267+ it ( 'adds default browser args when CI is set' , ( ) => {
268+ userConfig . flags = { ...flags , ci : true , e2e : true } ;
269+ const { config } = validateConfig ( userConfig , mockLoadConfigInit ( ) ) ;
270+ expect ( config . testing . browserArgs ) . toEqual ( [
271+ '--font-render-hinting=medium' ,
272+ '--incognito' ,
273+ '--no-sandbox' ,
274+ '--disable-setuid-sandbox' ,
275+ '--disable-dev-shm-usage' ,
276+ ] ) ;
277+ } ) ;
278+ } ) ;
279+ } ) ;
280+
281+ describe ( 'browserArgs in CI' , ( ) => {
282+ const originalCI = process . env . CI ;
283+ beforeEach ( ( ) => {
284+ process . env . CI = 'true' ;
285+ } ) ;
286+
287+ afterEach ( ( ) => {
288+ process . env . CI = originalCI ;
289+ } ) ;
290+
291+ it ( "adds additional browser args when 'CI' environment variable is set" , ( ) => {
292+ userConfig . flags = { ...flags , e2e : true } ;
293+ userConfig . testing = {
294+ browserArgs : [ '--unique' , '--font-render-hinting=medium' ] ,
295+ } ;
296+
297+ const { config } = validateConfig ( userConfig , mockLoadConfigInit ( ) ) ;
298+
299+ expect ( config . testing . browserArgs ) . toEqual ( [
300+ '--unique' ,
301+ '--font-render-hinting=medium' ,
302+ '--incognito' ,
303+ '--no-sandbox' ,
304+ '--disable-setuid-sandbox' ,
305+ '--disable-dev-shm-usage' ,
306+ ] ) ;
307+ } ) ;
217308 } ) ;
218309
219310 describe ( 'screenshotConnector' , ( ) => {
0 commit comments