Setup a testing bench

Signed-off-by: Marcel Müller <neikos@neikos.email>
This commit is contained in:
Marcel Müller 2026-03-06 13:56:39 +01:00
parent 4470af3926
commit d3e6410ec0
16 changed files with 336 additions and 4 deletions

View file

@ -0,0 +1,42 @@
---
source: tests/file_tests.rs
expression: ast
input_file: tests/cases/interpolation.temple
---
TemplateAst {
root: [
StaticContent(
TemplateToken {
kind: Content,
source: "Hello! I'm",
},
),
Interpolation {
prev_whitespace: Some(
TemplateToken {
kind: Whitespace,
source: " ",
},
),
wants_output: Some(
TemplateToken {
kind: WantsOutput,
source: "=",
},
),
expression: VariableAccess(
TemplateToken {
kind: Ident,
source: "name",
},
),
post_whitespace: Some(
TemplateToken {
kind: Whitespace,
source: "
",
},
),
},
],
}

View file

@ -0,0 +1,16 @@
---
source: tests/file_tests.rs
expression: ast
input_file: tests/cases/simple.temple
---
TemplateAst {
root: [
StaticContent(
TemplateToken {
kind: Content,
source: "Hello World!
",
},
),
],
}

View file

@ -0,0 +1,28 @@
---
source: tests/file_tests.rs
expression: emit
input_file: tests/cases/interpolation.temple
---
[
AppendContent {
content: "Hello! I'm",
},
AppendContent {
content: " ",
},
LoadFromContextToSlot {
name: "name",
slot: VariableSlot {
index: 0,
},
},
EmitFromSlot {
slot: VariableSlot {
index: 0,
},
},
AppendContent {
content: "
",
},
]

View file

@ -0,0 +1,11 @@
---
source: tests/file_tests.rs
expression: emit
input_file: tests/cases/simple.temple
---
[
AppendContent {
content: "Hello World!
",
},
]

View file

@ -0,0 +1,5 @@
{
"name": "Hemera"
}
---
Hello! I'm {{= name }}

View file

@ -0,0 +1,6 @@
---
source: tests/file_tests.rs
expression: output
input_file: tests/cases/interpolation.temple
---
"Hello! I'm Hemera\n"

View file

@ -0,0 +1,6 @@
---
source: tests/file_tests.rs
expression: output
input_file: tests/cases/simple.temple
---
"Hello World!\n"

View file

@ -0,0 +1,46 @@
---
source: tests/file_tests.rs
expression: parsed
input_file: tests/cases/interpolation.temple
---
ParsedTemplate {
tokens: [
TemplateToken {
kind: Content,
source: "Hello! I'm",
},
TemplateToken {
kind: Whitespace,
source: " ",
},
TemplateToken {
kind: LeftDelim,
source: "{{",
},
TemplateToken {
kind: WantsOutput,
source: "=",
},
TemplateToken {
kind: Whitespace,
source: " ",
},
TemplateToken {
kind: Ident,
source: "name",
},
TemplateToken {
kind: Whitespace,
source: " ",
},
TemplateToken {
kind: RightDelim,
source: "}}",
},
TemplateToken {
kind: Whitespace,
source: "
",
},
],
}

View file

@ -0,0 +1,14 @@
---
source: tests/file_tests.rs
expression: parsed
input_file: tests/cases/simple.temple
---
ParsedTemplate {
tokens: [
TemplateToken {
kind: Content,
source: "Hello World!
",
},
],
}

View file

@ -0,0 +1 @@
Hello World!