@@ -278,71 +278,6 @@ use webdriver::WebDriver;
278278
279279use crate :: template:: { image_export_js_script, pdf_export_js_script} ;
280280
281- #[ cfg( all( feature = "chromedriver" , not( target_os = "windows" ) ) ) ]
282- fn chrome_default_caps ( ) -> Vec < & ' static str > {
283- vec ! [
284- "--headless" ,
285- "--no-sandbox" ,
286- "--disable-gpu-sandbox" ,
287- "--disable-dev-shm-usage" ,
288- "--disable-extensions" ,
289- "--disable-background-networking" ,
290- "--disable-sync" ,
291- "--disable-translate" ,
292- "--disable-background-timer-throttling" ,
293- "--disable-renderer-backgrounding" ,
294- "--disable-features=VizDisplayCompositor" ,
295- "--memory-pressure-off" ,
296- // macOS-specific flags from choreographer
297- "--enable-unsafe-swiftshader" ,
298- "--use-mock-keychain" ,
299- "--password-store=basic" ,
300- "--disable-web-security" ,
301- "--disable-breakpad" ,
302- "--no-first-run" ,
303- "--no-default-browser-check" ,
304- // Additional flags for better PDF generation support
305- "--disable-backgrounding-occluded-windows" ,
306- "--disable-ipc-flooding-protection" ,
307- "--enable-logging" ,
308- "--v=1" ,
309- ]
310- }
311-
312- #[ cfg( all( feature = "chromedriver" , target_os = "windows" ) ) ]
313- fn chrome_default_caps ( ) -> Vec < & ' static str > {
314- vec ! [
315- "--headless=new" ,
316- "--no-sandbox" ,
317- "--disable-dev-shm-usage" ,
318- "--disable-breakpad" ,
319- "--no-first-run" ,
320- "--no-default-browser-check" ,
321- // Stability flags to prevent renderer crashes
322- "--disable-background-networking" ,
323- "--disable-sync" ,
324- "--disable-translate" ,
325- "--disable-background-timer-throttling" ,
326- "--disable-renderer-backgrounding" ,
327- "--disable-backgrounding-occluded-windows" ,
328- "--disable-ipc-flooding-protection" ,
329- "--disable-extensions" ,
330- // Minimal flags for Windows headless operation without disabling GPU
331- "--hide-scrollbars" ,
332- "--mute-audio" ,
333- "--use-angle=swiftshader" ,
334- "--disable-software-rasterizer" ,
335- ]
336- }
337-
338- #[ cfg( feature = "geckodriver" ) ]
339- fn firefox_default_caps ( ) -> Vec < & ' static str > {
340- vec ! [
341- "-headless" , // Essential for headless operation (single dash for Firefox)
342- "--no-remote" , // Prevents connecting to existing Firefox instances
343- ]
344- }
345-
346281mod template;
347282mod webdriver;
348283
@@ -506,14 +441,14 @@ impl Default for StaticExporterBuilder {
506441 webdriver_browser_caps : {
507442 #[ cfg( feature = "chromedriver" ) ]
508443 {
509- chrome_default_caps ( )
444+ crate :: webdriver :: chrome_default_caps ( )
510445 . into_iter ( )
511446 . map ( |s| s. to_string ( ) )
512447 . collect ( )
513448 }
514449 #[ cfg( feature = "geckodriver" ) ]
515450 {
516- firefox_default_caps ( )
451+ crate :: webdriver :: firefox_default_caps ( )
517452 . into_iter ( )
518453 . map ( |s| s. to_string ( ) )
519454 . collect ( )
@@ -1398,6 +1333,7 @@ mod tests {
13981333 . spawn_webdriver ( true )
13991334 . webdriver_port ( get_unique_port ( ) )
14001335 . pdf_export_timeout ( 750 )
1336+ . offline_mode ( true )
14011337 . build ( )
14021338 . unwrap ( ) ;
14031339
@@ -1416,8 +1352,8 @@ mod tests {
14161352 let metadata = std:: fs:: metadata ( & dst) . expect ( "Could not retrieve file metadata" ) ;
14171353 let file_size = metadata. len ( ) ;
14181354 assert ! ( file_size > 600000 , ) ;
1419- #[ cfg( not( feature = "ci" ) ) ]
1420- assert ! ( std:: fs:: remove_file( dst. as_path( ) ) . is_ok( ) ) ;
1355+ // #[cfg(not(feature = "ci"))]
1356+ // assert!(std::fs::remove_file(dst.as_path()).is_ok());
14211357 }
14221358
14231359 #[ test]
0 commit comments