From 0c75749ae52017dda31c9be871e9104f7c8c1f8f Mon Sep 17 00:00:00 2001 From: videogame hacker Date: Thu, 28 Apr 2022 20:03:26 +0100 Subject: [PATCH] Collect NodeRefs so that they all get visited --- Cargo.toml | 2 +- src/lib.rs | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 6280028..c7cb4f3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rewrite-html-blocks" -version = "1.0.0" +version = "1.0.1" edition = "2021" [dependencies] diff --git a/src/lib.rs b/src/lib.rs index 89fa7b1..8568582 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -7,6 +7,7 @@ pub fn rewrite_tags(html: &str, selector: &str, mapping: impl Fn(&NodeRef) -> St for elem in document .select(selector) .expect("Failed to select document with given selector") + .collect::>() { let node = elem.as_node(); let new_contents = kuchiki::parse_fragment( @@ -48,8 +49,8 @@ mod tests { #[test] fn remap_block() { - let html = r#"

hello, world! REPLACE ME

"#; - let rewritten_html = rewrite_tags(html, "#replace-me", |_| { + let html = r#"

hello, world! REPLACE ME me too!

"#; + let rewritten_html = rewrite_tags(html, ".replace-me", |_| { "it's a me!".to_string() });