(&self, commands: Vec<Command>)
| 495 | } |
| 496 | |
| 497 | fn detect_browser_version(&self, commands: Vec<Command>) -> Option<String> { |
| 498 | let browser_name = &self.get_browser_name(); |
| 499 | |
| 500 | self.get_logger().trace(format!( |
| 501 | "Using shell command to find out {} version", |
| 502 | browser_name |
| 503 | )); |
| 504 | let mut browser_version: Option<String> = None; |
| 505 | for driver_version_command in commands.into_iter() { |
| 506 | let output = match run_shell_command_with_log(self.get_logger(), driver_version_command) |
| 507 | { |
| 508 | Ok(out) => out, |
| 509 | Err(_) => continue, |
| 510 | }; |
| 511 | |
| 512 | let full_browser_version = parse_version(output, self.get_logger()).unwrap_or_default(); |
| 513 | if full_browser_version.is_empty() { |
| 514 | continue; |
| 515 | } |
| 516 | self.get_logger().trace(format!( |
| 517 | "The version of {} is {}", |
| 518 | browser_name, full_browser_version |
| 519 | )); |
| 520 | |
| 521 | browser_version = Some(full_browser_version); |
| 522 | break; |
| 523 | } |
| 524 | |
| 525 | browser_version |
| 526 | } |
| 527 | |
| 528 | fn discover_local_browser(&mut self) -> Result<(), Error> { |
| 529 | let mut download_browser = self.is_force_browser_download(); |
no test coverage detected