diff --git a/Cargo.lock b/Cargo.lock index e070c18a..ce9bea4f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1076,12 +1076,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "json" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd" - [[package]] name = "kqueue" version = "1.0.8" @@ -1225,7 +1219,6 @@ dependencies = [ "handlebars", "hex", "ignore", - "json", "log", "memchr", "notify", diff --git a/Cargo.toml b/Cargo.toml index 84ee9f52..0044fd2a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,7 +59,6 @@ ammonia = { version = "4.0.0", optional = true } [dev-dependencies] assert_cmd = "2.0.11" -json = "0.12.4" predicates = "3.0.3" select = "0.6.0" semver = "1.0.17" diff --git a/tests/gui/runner.rs b/tests/gui/runner.rs index e963ab58..3177ff4f 100644 --- a/tests/gui/runner.rs +++ b/tests/gui/runner.rs @@ -1,3 +1,4 @@ +use serde_json::Value; use std::collections::HashSet; use std::env::current_dir; use std::fs::{read_dir, read_to_string, remove_dir_all}; @@ -28,18 +29,17 @@ fn get_available_browser_ui_test_version() -> Option { fn expected_browser_ui_test_version() -> String { let content = read_to_string("package.json").expect("failed to read `package.json`"); - let json = json::parse(&content).expect("invalid JSON"); - if let json::JsonValue::Object(obj) = json { - if let Some(json::JsonValue::Object(deps)) = obj.get("dependencies") { - if let Some(version) = deps - .get("browser-ui-test") - .and_then(|version| version.as_str()) - { - return version.trim().to_string(); - } - } - } - panic!("failed to retrieved `browser-ui-test` version"); + let v: Value = serde_json::from_str(&content).expect("failed to parse `package.json`"); + let Some(dependencies) = v.get("dependencies") else { + panic!("Missing `dependencies` key in `package.json`"); + }; + let Some(browser_ui_test) = dependencies.get("browser-ui-test") else { + panic!("Missing `browser-ui-test` key in \"dependencies\" object in `package.json`"); + }; + let Value::String(version) = browser_ui_test else { + panic!("`browser-ui-test` version is not a string"); + }; + version.trim().to_string() } fn main() {