package classes import "testing" // TestConvertH1 pins ConvertH1's byte rule: only h1 tag names change. func TestConvertH1(t *testing.T) { cases := []struct { in, want string n int }{ {"

A

x

", "

A

x

", 1}, {`

T

`, `

T

`, 1}, {"

Up

", "

Up

", 1}, {"

a

\n

b

", "

a

\n

b

", 2}, {"

no heading & text

", "

no heading & text

", 0}, {"

x

", "

x

", 0}, {"", "", 0}, {"x

y

", "x

y

", 1}, {"# Markdown

raw

a < b", "# Markdown

raw

a < b", 1}, {"

unterminated

x", "

unterminated

x", 1}, {"text <", "text <", 0}, {"", "", 0}, } for _, c := range cases { got, n := ConvertH1(c.in) if got != c.want || n != c.n { t.Errorf("ConvertH1(%q) = %q, %d; want %q, %d", c.in, got, n, c.want, c.n) } } }