aboutsummaryrefslogtreecommitdiff
path: root/formatter/formatter_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'formatter/formatter_test.go')
-rw-r--r--formatter/formatter_test.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/formatter/formatter_test.go b/formatter/formatter_test.go
index 4fe8035..870b904 100644
--- a/formatter/formatter_test.go
+++ b/formatter/formatter_test.go
@@ -252,3 +252,30 @@ func TestTrimRightSpaces(t *testing.T) {
t.Fatalf("trimRightSpaces() returned ā€˜%sā€™", sy)
}
}
+
+func TestPrintAstWithComments(t *testing.T) {
+ s := `
+ html lang="en" {
+ body {
+ / p {= Hello, Sailor!}
+ p {= Hello, World!}
+ }
+ }`
+ result := `<html lang="en"><body><p>Hello, World!</p></body></html>`
+
+ // Write the source to a temp file
+ r := strings.NewReader(s)
+ f, _ := os.CreateTemp("", "tmp*")
+ defer f.Close()
+ io.Copy(f, r)
+ f.Seek(0, 0)
+ ast, _ := parser.ParseFile(f)
+
+ redirectStdout()
+ PrintAst(ast)
+
+ out := restoreAndCapture()
+ if out != result {
+ t.Fatalf("PrintAst() printed unexpected string ā€˜%sā€™", out)
+ }
+}