Clone in a terminal:
Commit c790785
Johan Mattsson - 2026-03-14T15:59:19+00:00
c790785eecfc5ec015ad23ae5752220cf9eb95abjohan.mattsson.m@gmail.com

Test for include tag

Changed files (5)

Diff

diff --git a/test-fail-messages/include/Cargo.lock b/test-fail-messages/include/Cargo.lockindex abc0b18..7f11739 100644--- a/test-fail-messages/include/Cargo.lock+++ b/test-fail-messages/include/Cargo.lock@@ -3,21 +3,20 @@ version = 4  [[package]]-name = "htmlmacro"+name = "include" version = "0.1.0" dependencies = [- "proc-macro-error",- "proc-macro2",- "quote",- "syn 2.0.111",- "v_htmlescape",+ "kaja-html-macro", ]  [[package]]-name = "include"-version = "0.1.0"+name = "kaja-html-macro"+version = "1.0.2" dependencies = [- "htmlmacro",+ "proc-macro-error",+ "proc-macro2",+ "quote",+ "syn 2.0.111", ]  [[package]]@@ -90,12 +89,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"  [[package]]-name = "v_htmlescape"-version = "0.15.8"-source = "registry+https://github.com/rust-lang/crates.io-index"-checksum = "4e8257fbc510f0a46eb602c10215901938b5c2a7d5e70fc11483b1d3c9b5b18c"--[[package]] name = "version_check" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index"diff --git a/test-fail-messages/include/Cargo.toml b/test-fail-messages/include/Cargo.tomlindex 3862d3e..857aaec 100644--- a/test-fail-messages/include/Cargo.toml+++ b/test-fail-messages/include/Cargo.toml@@ -6,7 +6,7 @@ version = "0.1.0" edition = "2024"  [dependencies]-htmlmacro = { path = "../../" }+kaja-html-macro = { path = "../../" }  [[bin]] name = "include"diff --git a/test-fail-messages/start/Cargo.toml b/test-fail-messages/start/Cargo.tomlindex 3862d3e..857aaec 100644--- a/test-fail-messages/start/Cargo.toml+++ b/test-fail-messages/start/Cargo.toml@@ -6,7 +6,7 @@ version = "0.1.0" edition = "2024"  [dependencies]-htmlmacro = { path = "../../" }+kaja-html-macro = { path = "../../" }  [[bin]] name = "include"diff --git a/test-fail-messages/structmember/Cargo.toml b/test-fail-messages/structmember/Cargo.tomlindex 6d6b626..aa17e17 100644--- a/test-fail-messages/structmember/Cargo.toml+++ b/test-fail-messages/structmember/Cargo.toml@@ -6,7 +6,7 @@ version = "0.1.0" edition = "2024"  [dependencies]-htmlmacro = { path = "../../" }+kaja-html-macro = { path = "../../" }  [[bin]] name = "structmember"diff --git a/tests/include.rs b/tests/include.rsnew file mode 100644index 0000000..5cfd5a4--- /dev/null+++ b/tests/include.rs@@ -0,0 +1,61 @@+// Copyright (c) 2026 Johan Mattsson+// License: MIT++use kaja_html_macro::html;++struct TestDataMessage {+    message: String,+    logged_in: bool,+}++struct TestData {+    data: TestDataMessage,+}++impl TestData {}++fn login_form(data: &TestDataMessage) -> String {+    let content = html! {{+        <h1>Form: $(&data.message)</h1>+    }};++    content+}++fn get_inner_html(data: &TestDataMessage) -> String {+    let content = html! {{+        <rust>+            if !data.logged_in {+                <markup>+                    <include login_form(&data) />+                </markup>+            }+        </rust>+    }};++    content+}++#[test]+fn include_inner_html() {+    let test = TestData {+        data: TestDataMessage {+            message: "test data".to_string(),+            logged_in: false,+        },+    };++    let content = html! {{+        <include login_form(&test.data) />+    }};++    assert!(content.contains("test data"));+    assert!(content.contains("Form"));++    let content = html! {{+        <include get_inner_html(&test.data) />+    }};++    println!("Generated: {}", content);+    assert!(content.contains("Form"));+}

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112