(&self, commands: Vec<Command>)
| 474 | } |
| 475 | |
| 476 | fn detect_browser_version(&self, commands: Vec<Command>) -> Option<String> { |
| 477 | let browser_name = &self.get_browser_name(); |
| 478 | |
| 479 | self.get_logger().trace(format!( |
| 480 | "Using shell command to find out {} version", |
| 481 | browser_name |
| 482 | )); |
| 483 | let mut browser_version: Option<String> = None; |
| 484 | for driver_version_command in commands.into_iter() { |
| 485 | let output = match run_shell_command_with_log(self.get_logger(), driver_version_command) |
| 486 | { |
| 487 | Ok(out) => out, |
| 488 | Err(_) => continue, |
| 489 | }; |
| 490 | |
| 491 | let full_browser_version = parse_version(output, self.get_logger()).unwrap_or_default(); |
| 492 | if full_browser_version.is_empty() { |
| 493 | continue; |
| 494 | } |
| 495 | self.get_logger().trace(format!( |
| 496 | "The version of {} is {}", |
| 497 | browser_name, full_browser_version |
| 498 | )); |
| 499 | |
| 500 | browser_version = Some(full_browser_version); |
| 501 | break; |
| 502 | } |
| 503 | |
| 504 | browser_version |
| 505 | } |
| 506 | |
| 507 | fn discover_local_browser(&mut self) -> Result<(), Error> { |
| 508 | let mut download_browser = self.is_force_browser_download(); |
no test coverage detected