chiark / gitweb /
wip check in-browser error log
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 6 Jan 2021 01:40:04 +0000 (01:40 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 6 Jan 2021 01:40:04 +0000 (01:40 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
wdriver.rs

index 35d76aac0f950785b499e82b86de42f21347d64e..2c820a65f9e01d6fbd3901aa2cc442992e48ad82 100644 (file)
@@ -1009,6 +1009,28 @@ impl<'g> WindowGuard<'g> {
       Ok::<(),AE>(())
     })()
       .context("await gen update via async js script")?;
+
+    (|| {
+      let errors = self.su.driver.execute_script(r#"
+        let e = document.getElementById('errors');
+        if (e) {
+          return e.innerHTML;
+        } else {
+          console.log('wdt-*: no errors element, no trapped errors check');
+          return "";
+        }
+      "#)
+        .context("get errors")?;
+      let errors = errors
+        .value()
+        .as_str()
+        .ok_or_else(|| anyhow!("errors script gave non-string"))?;
+      if ! errors.is_empty() {
+        throw!(anyhow!("JS errors - HTML: {}", errors));
+      }
+      Ok::<(),AE>(())
+    })()
+      .context("check for in-client trapped errors")?;
   }
 }