diff options
Diffstat (limited to 'formatter/formatter_test.go')
| -rw-r--r-- | formatter/formatter_test.go | 27 | 
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) +	} +}  |