public void GivenThatLinkContainsRelation_WhenConstructingLinkHeader_ThenUrlAndRelationIsCorrectInLinkHeader()
        {
            var uri = new Uri("https://api.ourawesomesite.com/resources?parameterOne=parameterValueOne");
            var link = new Link(uri, "next");

            var linkHeader = link.ToLinkHeader();

            Assert.AreEqual($"<{uri.OriginalString}>; rel=\"{link.Relation}\"", linkHeader);
        }
        public void GivenThatLinkHasNoRelation_WhenConstructingLinkHeader_ThenLinkHeaderOnlyContainsCorrectUrl()
        {
            var uri = new Uri("https://api.ourawesomesite.com");
            var link = new Link(uri);

            var linkHeader = link.ToLinkHeader();

            Assert.AreEqual($"<{uri.OriginalString}>", linkHeader);
        }
        public void GivenThatLinkContainsParameters_WhenConstructingLinkHeader_ThenUrlParametersAreCorrectInLinkHeader()
        {
            var uri = new Uri("https://api.ourawesomesite.com/resources?parameterOne=parameterValueOne");
            var link = new Link(uri);

            var linkHeader = link.ToLinkHeader();

            Assert.AreEqual($"<{uri.OriginalString}>", linkHeader);
        }
        public void GivenThatLinkContainsTargetAndRel_WhenAddingLinkHeader_ThenResponseContainsCorrectLinkHeader()
        {
            var response = new HttpResponseMessage();
            var uri = new Uri("https://api.ourawesomesite.com");
            var link = new Link(uri, "next");

            response.Headers.AddLinkHeader(link);
            var linkHeader = response.Headers.GetValues("Link");

            Assert.AreEqual($"<{uri.OriginalString}>; rel=\"{link.Relation}\"", linkHeader.First());
        }
Example #5
0
 public void GivenThatTargetIsNull_WhenConstructingLink_ThenArgumentNullExceptionIsThrown()
 {
     var link = new Link(null);
 }
Example #6
0
 public void GivenThatRelationIsNull_WhenConstructingLink_ThenArgumentNullExceptionIsThrown()
 {
     var link = new Link(new Uri("https://localhost.com"), null);
 }
 public static void AddLinkHeader(this HttpHeaders headers, Link link)
 {
     if (link == null) throw new ArgumentNullException(nameof(link));
     var headerValue = link.ToLinkHeader();
     headers.Add("Link", headerValue);
 }