package owl_test import ( "h4kor/owl-blogs" "h4kor/owl-blogs/test/assertions" "net/http" "testing" ) func TestGetRedirctUrisLink(t *testing.T) { html := []byte("") parser := &owl.OwlHtmlParser{} uris, err := parser.GetRedirctUris(constructResponse(html)) assertions.AssertNoError(t, err, "Unable to parse feed") assertions.AssertArrayContains(t, uris, "http://example.com/redirect") } func TestGetRedirctUrisLinkMultiple(t *testing.T) { html := []byte(` `) parser := &owl.OwlHtmlParser{} uris, err := parser.GetRedirctUris(constructResponse(html)) assertions.AssertNoError(t, err, "Unable to parse feed") assertions.AssertArrayContains(t, uris, "http://example.com/redirect1") assertions.AssertArrayContains(t, uris, "http://example.com/redirect2") assertions.AssertArrayContains(t, uris, "http://example.com/redirect3") assertions.AssertLen(t, uris, 3) } func TestGetRedirectUrisLinkHeader(t *testing.T) { html := []byte("") parser := &owl.OwlHtmlParser{} resp := constructResponse(html) resp.Header = http.Header{"Link": []string{"; rel=\"redirect_uri\""}} uris, err := parser.GetRedirctUris(resp) assertions.AssertNoError(t, err, "Unable to parse feed") assertions.AssertArrayContains(t, uris, "http://example.com/redirect") }