public void ParseSimpleLinkHeader() { var isValid = WebLink.TryParse("<http://example.org/foo.json>", out var link); Assert.True(isValid); Assert.Equal("http://example.org/foo.json", link.LinkValue); }
public void ItCanParseAQuotedMediaType() { var isValid = WebLink.TryParse("<http://example.org/foo.json>;type=\"application/ld+json\"", out var link); Assert.True(isValid); Assert.Equal(new[] { "application/ld+json" }, link.MediaTypes); }
public void ItCanParseMultipleValuesFromTheRelField() { var isValid = WebLink.TryParse("<http://example.org/foo.json>;rel=\"rel1 rel2\"", out var link); Assert.True(isValid); Assert.Equal(new[] { "rel1", "rel2" }, link.RelationTypes); }
private static IEnumerable <WebLink> ParseLinkHeaders(IEnumerable <string> linkHeaderValues) { foreach (var linkHeaderValue in linkHeaderValues) { if (WebLink.TryParse(linkHeaderValue, out var link)) { yield return(link); } } }
public void ItCanParseMultipleFields() { var isValid = WebLink.TryParse("<http://example.org/foo.json>;type=\"application/ld+json\";rel=alternate", out var link); Assert.True(isValid); Assert.Equal(new[] { "application/ld+json" }, link.MediaTypes); Assert.Equal(new string[] { "alternate" }, link.RelationTypes); Assert.Equal("http://example.org/foo.json", link.LinkValue); }