From 9b66da6b45c823682c0981e97a610770edd8be8c Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Wed, 23 Dec 2020 00:06:35 +0000 Subject: [PATCH] run geckodriver But we leak it Signed-off-by: Ian Jackson --- wdriver.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/wdriver.rs b/wdriver.rs index 10233c75..3e723b96 100644 --- a/wdriver.rs +++ b/wdriver.rs @@ -166,6 +166,20 @@ fn prepare_xserver() { Box::leak(Box::new(xconn)); } +#[throws(AE)] +fn prepare_geckodriver() { + const EXPECTED : &str = "Listening on 127.0.0.1:4444"; + let cmd = Command::new("geckodriver"); + let l = fork_something_which_prints(cmd).context("geckodriver")?; + let fields : Vec<_> = l.split('\t').skip(2).take(2).collect(); + let expected = ["INFO", EXPECTED]; + if fields != expected { + throw!(anyhow!("geckodriver did not report as expected \ + - got {:?}, expected {:?}", + fields, &expected)); + } +} + #[throws(AE)] pub fn setup() -> Setup { let current_exe : String = env::current_exe() @@ -183,6 +197,7 @@ pub fn setup() -> Setup { let tmp = prepare_tmpdir(&opts, ¤t_exe)?; prepare_xserver().context("setup X server")?; + prepare_geckodriver().context("setup webdriver serverr")?; Setup { tmp, -- 2.30.2