Skip to content

Commit 49e8d43

Browse files
committed
[rust] Fix exec driver test in macos
1 parent abb0e84 commit 49e8d43

File tree

4 files changed

+23
-11
lines changed

4 files changed

+23
-11
lines changed

rust/tests/chrome_download_tests.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
use assert_cmd::Command;
1919

20-
use crate::common::assert_driver_and_browser;
20+
use crate::common::{assert_browser, assert_driver};
2121
use rstest::rstest;
2222

2323
mod common;
@@ -36,7 +36,8 @@ fn chrome_latest_download_test() {
3636
.success()
3737
.code(0);
3838

39-
assert_driver_and_browser(&mut cmd);
39+
assert_driver(&mut cmd);
40+
assert_browser(&mut cmd);
4041
}
4142

4243
#[rstest]
@@ -56,5 +57,6 @@ fn chrome_version_download_test(#[case] browser_version: String) {
5657
.success()
5758
.code(0);
5859

59-
assert_driver_and_browser(&mut cmd);
60+
assert_driver(&mut cmd);
61+
assert_browser(&mut cmd);
6062
}

rust/tests/common.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ use is_executable::is_executable;
2323
use selenium_manager::logger::JsonOutput;
2424
use selenium_manager::shell::run_shell_command_by_os;
2525

26-
pub fn assert_driver_and_browser(cmd: &mut Command) {
26+
pub fn assert_driver(cmd: &mut Command) {
2727
let stdout = &cmd.unwrap().stdout;
2828
let output = std::str::from_utf8(stdout).unwrap();
2929
println!("{}", output);
@@ -32,7 +32,12 @@ pub fn assert_driver_and_browser(cmd: &mut Command) {
3232
let driver_path = Path::new(&json.result.driver_path);
3333
assert!(driver_path.exists());
3434
assert!(is_executable(driver_path));
35+
}
3536

37+
pub fn assert_browser(cmd: &mut Command) {
38+
let stdout = &cmd.unwrap().stdout;
39+
let output = std::str::from_utf8(stdout).unwrap();
40+
let json: JsonOutput = serde_json::from_str(output).unwrap();
3641
let browser_path = Path::new(&json.result.browser_path);
3742
assert!(browser_path.exists());
3843
assert!(is_executable(browser_path));
@@ -45,8 +50,8 @@ pub fn exec_driver(cmd: &mut Command) -> String {
4550
let json: JsonOutput = serde_json::from_str(output).unwrap();
4651
let driver_path = Path::new(&json.result.driver_path);
4752

48-
let output =
49-
run_shell_command_by_os(OS, vec![driver_path.to_str().unwrap(), "--version"]).unwrap();
53+
let driver_version_command = format!("{} --version", driver_path.to_str().unwrap());
54+
let output = run_shell_command_by_os(OS, vec![&driver_version_command]).unwrap();
5055
println!("**** EXEC DRIVER: {}", output);
5156
output
5257
}

rust/tests/exec_driver_tests.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
// specific language governing permissions and limitations
1616
// under the License.
1717

18-
use crate::common::{assert_driver_and_browser, exec_driver};
18+
use crate::common::{assert_browser, assert_driver, exec_driver};
1919
use std::env::consts::OS;
2020

2121
use assert_cmd::Command;
@@ -35,8 +35,12 @@ fn exec_driver_test(#[case] browser_name: String, #[case] driver_name: String) {
3535
.success()
3636
.code(0);
3737

38-
if OS.eq("macos") {
39-
assert_driver_and_browser(&mut cmd);
38+
assert_driver(&mut cmd);
39+
40+
if (browser_name.eq("iexplorer") && OS.eq("windows"))
41+
|| (!browser_name.eq("iexplorer") && !OS.eq("windows"))
42+
{
43+
assert_browser(&mut cmd);
4044
let output = exec_driver(&mut cmd);
4145
assert!(output.contains(&driver_name));
4246
}

rust/tests/stable_browser_tests.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
use assert_cmd::Command;
1919

20-
use crate::common::assert_driver_and_browser;
20+
use crate::common::{assert_browser, assert_driver};
2121
use rstest::rstest;
2222

2323
mod common;
@@ -40,5 +40,6 @@ fn stable_browser_test(#[case] browser_name: String) {
4040
.success()
4141
.code(0);
4242

43-
assert_driver_and_browser(&mut cmd);
43+
assert_driver(&mut cmd);
44+
assert_browser(&mut cmd);
4445
}

0 commit comments

Comments
 (0)