package transform import ( "bytes" "strings" "testing" ) const HTML_WITH_NAV = ` ` const EXPECTED_HTML_WITH_NAV_1 = ` ` func TestSetNav(t *testing.T) { trs := NavActive("section_2", "hugo-nav") chain := NewChain(trs...) out := new(bytes.Buffer) if err := chain.Apply(out, strings.NewReader(HTML_WITH_NAV)); err != nil { t.Errorf("Unexpected error in Apply() for NavActive: %s", err) } expected := EXPECTED_HTML_WITH_NAV_1 if out.String() != expected { t.Errorf("NavActive.Apply output expected and got:\n%q\n%q", expected, out.String()) } } func BenchmarkTransform(b *testing.B) { tr := NavActive("section_2", "hugo-nav") chain := NewChain(tr...) out := new(bytes.Buffer) for i := 0; i < b.N; i++ { if err := chain.Apply(out, strings.NewReader(HTML_WITH_NAV)); err != nil { b.Errorf("Unexpected error in Apply() for NavActive: %s", err) } out.Reset() } }