Skip to content

Commit e92ab45

Browse files
committed
[rust] Make public the function for formatting
1 parent 764aff6 commit e92ab45

File tree

4 files changed

+46
-48
lines changed

4 files changed

+46
-48
lines changed

rust/src/chrome.rs

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ use crate::metadata::{
3030
create_driver_metadata, get_driver_version_from_metadata, get_metadata, write_metadata,
3131
};
3232
use crate::{
33-
create_default_http_client, SeleniumManager, BETA, DASH_DASH_VERSION, DEV, ENV_LOCALAPPDATA,
34-
ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86, FALLBACK_RETRIES, NIGHTLY, REG_QUERY, STABLE,
35-
WMIC_COMMAND, WMIC_COMMAND_ENV,
33+
create_default_http_client, format_one_arg, format_two_args, SeleniumManager, BETA,
34+
DASH_DASH_VERSION, DEV, ENV_LOCALAPPDATA, ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86,
35+
FALLBACK_RETRIES, NIGHTLY, REG_QUERY, STABLE, WMIC_COMMAND, WMIC_COMMAND_ENV,
3636
};
3737

3838
const BROWSER_NAME: &str = "chrome";
@@ -121,26 +121,24 @@ impl SeleniumManager for ChromeManager {
121121
Some(path) => {
122122
browser_path = path;
123123
commands = vec![
124-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
125-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
126-
self.format_two_args(WMIC_COMMAND_ENV, ENV_LOCALAPPDATA, browser_path),
124+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
125+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
126+
format_two_args(WMIC_COMMAND_ENV, ENV_LOCALAPPDATA, browser_path),
127127
];
128128
if !self.is_browser_version_unstable() {
129-
commands.push(
130-
self.format_one_arg(
131-
REG_QUERY,
132-
r#"HKCU\Software\Google\Chrome\BLBeacon"#,
133-
),
134-
);
129+
commands.push(format_one_arg(
130+
REG_QUERY,
131+
r#"HKCU\Software\Google\Chrome\BLBeacon"#,
132+
));
135133
}
136134
}
137135
_ => return None,
138136
}
139137
} else {
140-
commands = vec![self.format_one_arg(WMIC_COMMAND, browser_path)];
138+
commands = vec![format_one_arg(WMIC_COMMAND, browser_path)];
141139
}
142140
if !WINDOWS.is(self.get_os()) {
143-
commands = vec![self.format_one_arg(DASH_DASH_VERSION, browser_path)]
141+
commands = vec![format_one_arg(DASH_DASH_VERSION, browser_path)]
144142
}
145143
self.detect_browser_version(commands)
146144
}

rust/src/edge.rs

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ use crate::metadata::{
2929
create_driver_metadata, get_driver_version_from_metadata, get_metadata, write_metadata,
3030
};
3131
use crate::{
32-
create_default_http_client, Logger, SeleniumManager, BETA, DASH_DASH_VERSION, DEV,
33-
ENV_LOCALAPPDATA, ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86, NIGHTLY, REG_QUERY, STABLE,
34-
WMIC_COMMAND, WMIC_COMMAND_ENV,
32+
create_default_http_client, format_one_arg, format_two_args, Logger, SeleniumManager, BETA,
33+
DASH_DASH_VERSION, DEV, ENV_LOCALAPPDATA, ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86, NIGHTLY,
34+
REG_QUERY, STABLE, WMIC_COMMAND, WMIC_COMMAND_ENV,
3535
};
3636

3737
const BROWSER_NAME: &str = "edge";
@@ -121,26 +121,24 @@ impl SeleniumManager for EdgeManager {
121121
Some(path) => {
122122
browser_path = path;
123123
commands = vec![
124-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
125-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
126-
self.format_two_args(WMIC_COMMAND, ENV_LOCALAPPDATA, browser_path),
124+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
125+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
126+
format_two_args(WMIC_COMMAND, ENV_LOCALAPPDATA, browser_path),
127127
];
128128
if !self.is_browser_version_unstable() {
129-
commands.push(
130-
self.format_one_arg(
131-
REG_QUERY,
132-
r#"HKCU\Software\Microsoft\Edge\BLBeacon"#,
133-
),
134-
);
129+
commands.push(format_one_arg(
130+
REG_QUERY,
131+
r#"HKCU\Software\Microsoft\Edge\BLBeacon"#,
132+
));
135133
}
136134
}
137135
_ => return None,
138136
}
139137
} else {
140-
commands = vec![self.format_one_arg(WMIC_COMMAND, browser_path)];
138+
commands = vec![format_one_arg(WMIC_COMMAND, browser_path)];
141139
}
142140
if !WINDOWS.is(self.get_os()) {
143-
commands = vec![self.format_one_arg(DASH_DASH_VERSION, browser_path)]
141+
commands = vec![format_one_arg(DASH_DASH_VERSION, browser_path)]
144142
}
145143
self.detect_browser_version(commands)
146144
}

rust/src/firefox.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ use crate::metadata::{
2929
create_driver_metadata, get_driver_version_from_metadata, get_metadata, write_metadata,
3030
};
3131
use crate::{
32-
create_default_http_client, Logger, SeleniumManager, BETA, DASH_VERSION, DEV,
33-
ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86, NIGHTLY, STABLE, WMIC_COMMAND, WMIC_COMMAND_ENV,
32+
create_default_http_client, format_one_arg, format_two_args, Logger, SeleniumManager, BETA,
33+
DASH_VERSION, DEV, ENV_PROGRAM_FILES, ENV_PROGRAM_FILES_X86, NIGHTLY, STABLE, WMIC_COMMAND,
34+
WMIC_COMMAND_ENV,
3435
};
3536

3637
const BROWSER_NAME: &str = "firefox";
@@ -120,17 +121,17 @@ impl SeleniumManager for FirefoxManager {
120121
Some(path) => {
121122
browser_path = path;
122123
commands = vec![
123-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
124-
self.format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
124+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES, browser_path),
125+
format_two_args(WMIC_COMMAND_ENV, ENV_PROGRAM_FILES_X86, browser_path),
125126
];
126127
}
127128
_ => return None,
128129
}
129130
} else {
130-
commands = vec![self.format_one_arg(WMIC_COMMAND, browser_path)];
131+
commands = vec![format_one_arg(WMIC_COMMAND, browser_path)];
131132
}
132133
if !WINDOWS.is(self.get_os()) {
133-
commands = vec![self.format_one_arg(DASH_VERSION, browser_path)]
134+
commands = vec![format_one_arg(DASH_VERSION, browser_path)]
134135
}
135136
self.detect_browser_version(commands)
136137
}

rust/src/lib.rs

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -221,9 +221,9 @@ pub trait SeleniumManager {
221221
}
222222

223223
fn find_driver_in_path(&self) -> (Option<String>, Option<String>) {
224-
match self.run_shell_command_with_log(
225-
self.format_one_arg(DASH_DASH_VERSION, self.get_driver_name()),
226-
) {
224+
match self
225+
.run_shell_command_with_log(format_one_arg(DASH_DASH_VERSION, self.get_driver_name()))
226+
{
227227
Ok(output) => {
228228
let parsed_version = parse_version(output).unwrap_or_default();
229229
if !parsed_version.is_empty() {
@@ -232,9 +232,10 @@ pub trait SeleniumManager {
232232
} else {
233233
WHICH_COMMAND
234234
};
235-
let driver_path = match self.run_shell_command_with_log(
236-
self.format_one_arg(which_command, self.get_driver_name()),
237-
) {
235+
let driver_path = match self.run_shell_command_with_log(format_one_arg(
236+
which_command,
237+
self.get_driver_name(),
238+
)) {
238239
Ok(path) => Some(path),
239240
Err(_) => None,
240241
};
@@ -310,14 +311,6 @@ pub trait SeleniumManager {
310311
get_index_version(full_version, 1)
311312
}
312313

313-
fn format_one_arg(&self, string: &str, arg1: &str) -> String {
314-
string.replacen("{}", arg1, 1)
315-
}
316-
317-
fn format_two_args(&self, string: &str, arg1: &str, arg2: &str) -> String {
318-
string.replacen("{}", arg1, 1).replacen("{}", arg2, 2)
319-
}
320-
321314
// ----------------------------------------------------------
322315
// Getters and setters for configuration parameters
323316
// ----------------------------------------------------------
@@ -520,3 +513,11 @@ pub fn run_shell_command(os: &str, command: String) -> Result<String, Box<dyn Er
520513
.to_string(),
521514
)
522515
}
516+
517+
pub fn format_one_arg(string: &str, arg1: &str) -> String {
518+
string.replacen("{}", arg1, 1)
519+
}
520+
521+
pub fn format_two_args(string: &str, arg1: &str, arg2: &str) -> String {
522+
string.replacen("{}", arg1, 1).replacen("{}", arg2, 2)
523+
}

0 commit comments

Comments
 (0)