aboutsummaryrefslogtreecommitdiff
path: root/markdown/ast_test.go
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2025-10-02 19:52:38 +0200
committerAnhgelus Morhtuuzh <william@herges.fr>2025-10-02 19:52:38 +0200
commit94dceb4f7c1740de9215b36ec183f93ca4337ee7 (patch)
tree5ad184efb0b74dd3aa4da7585f88a3e3f6cb4ecc /markdown/ast_test.go
parent8b249c9ce8bd1c351daf80c6c9b095fb1bccafe2 (diff)
style(markdown): fix typo in package name
Diffstat (limited to 'markdown/ast_test.go')
-rw-r--r--markdown/ast_test.go62
1 files changed, 62 insertions, 0 deletions
diff --git a/markdown/ast_test.go b/markdown/ast_test.go
new file mode 100644
index 0000000..acd6aa7
--- /dev/null
+++ b/markdown/ast_test.go
@@ -0,0 +1,62 @@
+package markdown
+
+import (
+ "strings"
+ "testing"
+)
+
+var raw = `
+# Je suis un titre
+Avec une description classique,
+sur plusieurs lignes !
+
+Et je peux mettre du texte en **gras**,
+en *italique* et les **_deux en même temps_** !
+
+> Je suis une magnifique citation
+> sur plusieurs lignes
+avec une source
+> qui recommence après !
+
+- Ceci est une liste
+- pas ordonnée
+1. et maintenant
+2. elle l'est
+- hehe
+
+![Ceci est ma pfp :3](https://cdn.anhgelus.world/pfp.jpg)
+[Ma pfp](https://now.anhgelus.world/) hehe :D
+Elle est **magnifique**, n'est-ce pas ?
+`
+
+var parsed = `
+<h1>Je suis un titre</h1>
+<p>Avec une description classique, sur plusieurs lignes !</p>
+<p>Et je peux mettre du texte en <b>gras</b>, en <em>italique</em> et les <b><em>deux en même temps</em></b> !</p>
+<div class="quote"><blockquote>Je suis une magnifique citation sur plusieurs lignes</blockquote><p>avec une source</p></div>
+<div class="quote"><blockquote>qui recommence après !</blockquote></div>
+<ul><li>Ceci est une liste</li><li>pas ordonnée</li></ul>
+<ol><li>et maintenant</li><li>elle l&#39;est</li></ol>
+<ul><li>hehe</li></ul>
+<figure>
+<img alt="Ceci est ma pfp :3" src="https://cdn.anhgelus.world/pfp.jpg">
+<figcaption><a href="https://now.anhgelus.world/">Ma pfp</a> hehe :D Elle est <b>magnifique</b>, n&#39;est-ce pas ?</figcaption>
+</figure>
+`
+
+func TestAst(t *testing.T) {
+ lxs := lex(raw)
+ tree, err := ast(lxs)
+ if err != nil {
+ t.Fatal(err)
+ }
+ res, err := tree.Eval()
+ if err != nil {
+ t.Fatal(err)
+ }
+ wanted := strings.ReplaceAll(parsed, "\n", "")
+ if string(res) != wanted {
+ t.Errorf("invalid string, got\n%s", res)
+ t.Logf("wanted\n%s", wanted)
+ }
+}