package test import ( "os" "testing" "git.brandonirizarry.xyz/links/internal/findlinks" "github.com/google/go-cmp/cmp" ) func findLinksFile(filename string) ([]findlinks.Link, error) { f, err := os.Open(filename) if err != nil { panic("can't open test file") } defer f.Close() return findlinks.FindLinks(f) } func TestFindlinks(t *testing.T) { type test struct { filename string links []findlinks.Link } tests := []test{ { "html/ex1.html", []findlinks.Link{ { Href: "/other-page", Text: "A link to another page", }, }, }, } for _, test := range tests { t.Run(test.filename, func(t *testing.T) { links, err := findLinksFile(test.filename) if err != nil { t.Error(err) } if !cmp.Equal(links, test.links) { t.Errorf("got %v, want %v", links, test.links) } }) } }