MCPcopy
hub / github.com/valyala/quicktemplate / TestParseFile

Function TestParseFile

parser/parser_test.go:569–612  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

567}
568
569func TestParseFile(t *testing.T) {
570 currDir, err := os.Getwd()
571 if err != nil {
572 t.Fatalf("cannot obtain current directory: %s", err)
573 }
574 if err := os.Chdir("../testdata/qtc"); err != nil {
575 t.Fatalf("cannot change directory to `../testdata/qtc`: %s", err)
576 }
577 defer func() {
578 if err := os.Chdir(currDir); err != nil {
579 t.Fatalf("cannot change directory to %q: %s", currDir, err)
580 }
581 }()
582
583 filename := "test.qtpl"
584 f, err := os.Open(filename)
585 if err != nil {
586 t.Fatalf("cannot open file %q: %s", filename, err)
587 }
588 defer f.Close()
589
590 w := quicktemplate.AcquireByteBuffer()
591 if err := Parse(w, f, "test.qtpl", "qtc"); err != nil {
592 t.Fatalf("unexpected error: %s", err)
593 }
594 code, err := format.Source(w.B)
595 if err != nil {
596 t.Fatalf("unexpected error: %s", err)
597 }
598 quicktemplate.ReleaseByteBuffer(w)
599
600 expectedFilename := filename + ".expected"
601 expectedCode, err := ioutil.ReadFile(expectedFilename)
602 if err != nil {
603 t.Fatalf("unexpected error: %s", err)
604 }
605
606 if !bytes.Equal(code, expectedCode) {
607 if err := ioutil.WriteFile(filename+".generated", code, 0644); err != nil {
608 t.Fatal(err)
609 }
610 t.Fatalf("unexpected code:\n%q\nexpected:\n%q", code, expectedCode)
611 }
612}
613
614func TestParseNoLineComments(t *testing.T) {
615 const str = "foobar\nbaz"

Callers

nothing calls this directly

Calls 3

AcquireByteBufferFunction · 0.92
ReleaseByteBufferFunction · 0.92
ParseFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…