Skip to content

Commit

Permalink
[rust] Support for multiple browser names in Selenium Manager (Seleni…
Browse files Browse the repository at this point in the history
…umHQ#11352) (SeleniumHQ#11420)

* [rust] Support for multiple browser names in Selenium Manager (SeleniumHQ#11352)

* [rust] Use vector of broweser name to create a shorter conditional
  • Loading branch information
bonigarcia committed Dec 13, 2022
1 parent 19ffbef commit 8467a8c
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions rust/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -288,13 +288,22 @@ pub trait SeleniumManager {
// ----------------------------------------------------------

pub fn get_manager_by_browser(browser_name: String) -> Result<Box<dyn SeleniumManager>, String> {
if browser_name.eq_ignore_ascii_case("chrome") {
let browser_name_lower_case = browser_name.to_ascii_lowercase();
if browser_name_lower_case.eq("chrome") {
Ok(ChromeManager::new())
} else if browser_name.eq_ignore_ascii_case("firefox") {
} else if browser_name.eq("firefox") {
Ok(FirefoxManager::new())
} else if browser_name.eq_ignore_ascii_case("edge") {
} else if vec!["edge", "msedge", "microsoftedge"].contains(&browser_name_lower_case.as_str()) {
Ok(EdgeManager::new())
} else if browser_name.eq_ignore_ascii_case("iexplorer") {
} else if vec![
"iexplorer",
"ie",
"internetexplorer",
"internet-explorer",
"internet_explorer",
]
.contains(&browser_name_lower_case.as_str())
{
Ok(IExplorerManager::new())
} else {
Err(format!("Invalid browser name: {browser_name}"))
Expand Down

0 comments on commit 8467a8c

Please sign in to comment.