test(js): initialize runtime fixtures before evaluation

This commit is contained in:
lisa0314 committed 2026-07-23 10:58:29 +08:00
1 parent 36d8e43140
commit a440b5646c
1 file changed
+6 -7
+6 -7
View File
@@ -1297,10 +1297,11 @@ mod tests {
fn setup_runtime(html: &str) -> ObscuraJsRuntime { fn setup_runtime(html: &str) -> ObscuraJsRuntime {
let dom = parse_html(html); let dom = parse_html(html);
let rt = ObscuraJsRuntime::new(); let mut rt = ObscuraJsRuntime::new();
rt.set_dom(dom); rt.set_dom(dom);
rt.set_url("http://example.com/test"); rt.set_url("http://example.com/test");
rt.set_title("Test Page"); rt.set_title("Test Page");
rt.run_page_init();
rt rt
} }
@@ -1380,7 +1381,6 @@ mod tests {
#[test] #[test]
fn append_child_flattens_document_fragment() { fn append_child_flattens_document_fragment() {
let mut rt = setup_runtime(r#"<main id="host"></main>"#); let mut rt = setup_runtime(r#"<main id="host"></main>"#);
rt.run_page_init();
let result = rt let result = rt
.evaluate( .evaluate(
r#" r#"
@@ -1415,7 +1415,6 @@ mod tests {
#[test] #[test]
fn insert_before_flattens_document_fragment_in_order() { fn insert_before_flattens_document_fragment_in_order() {
let mut rt = setup_runtime(r#"<main id="host"><article id="last"></article></main>"#); let mut rt = setup_runtime(r#"<main id="host"><article id="last"></article></main>"#);
rt.run_page_init();
let result = rt let result = rt
.evaluate( .evaluate(
r#" r#"
@@ -1451,7 +1450,6 @@ mod tests {
let mut rt = setup_runtime( let mut rt = setup_runtime(
r#"<main id="host"><article id="old"></article><article id="tail"></article></main>"#, r#"<main id="host"><article id="old"></article><article id="tail"></article></main>"#,
); );
rt.run_page_init();
let result = rt let result = rt
.evaluate( .evaluate(
r#" r#"
@@ -1987,11 +1985,11 @@ mod tests {
drop(rt2); drop(rt2);
if let Some(dom) = dom1 { if let Some(dom) = dom1 {
let rt1b = ObscuraJsRuntime::new(); let mut rt1b = ObscuraJsRuntime::new();
rt1b.set_dom(dom); rt1b.set_dom(dom);
rt1b.set_url("http://example.com"); rt1b.set_url("http://example.com");
rt1b.set_title("Page1"); rt1b.set_title("Page1");
let mut rt1b = rt1b; rt1b.run_page_init();
let title1b = rt1b.evaluate("document.querySelector('h1').textContent").unwrap(); let title1b = rt1b.evaluate("document.querySelector('h1').textContent").unwrap();
assert_eq!(title1b, serde_json::json!("Page1")); assert_eq!(title1b, serde_json::json!("Page1"));
} }
@@ -2121,11 +2119,12 @@ mod tests {
fn setup_runtime_with_cookies(html: &str) -> (ObscuraJsRuntime, std::sync::Arc<obscura_net::CookieJar>) { fn setup_runtime_with_cookies(html: &str) -> (ObscuraJsRuntime, std::sync::Arc<obscura_net::CookieJar>) {
let dom = obscura_dom::parse_html(html); let dom = obscura_dom::parse_html(html);
let jar = std::sync::Arc::new(obscura_net::CookieJar::new()); let jar = std::sync::Arc::new(obscura_net::CookieJar::new());
let rt = ObscuraJsRuntime::new(); let mut rt = ObscuraJsRuntime::new();
rt.set_dom(dom); rt.set_dom(dom);
rt.set_url("http://example.com/test"); rt.set_url("http://example.com/test");
rt.set_title("Test Page"); rt.set_title("Test Page");
rt.set_cookie_jar(jar.clone()); rt.set_cookie_jar(jar.clone());
rt.run_page_init();
(rt, jar) (rt, jar)
} }