Example #1
0
        public void GetFullUrlBuilder_BuildsFullUrlWithoutQueryString()
        {
            // arrange
            var actionContext = MockHelpers.ActionContext();

            var actionContextAccessorMock = new Mock <IActionContextAccessor>();

            actionContextAccessorMock.SetupGet(x => x.ActionContext).Returns(actionContext);

            var host = new HostString("test.be", 99);

            Mock.Get(actionContext.HttpContext.Request).SetupGet(x => x.Host).Returns(host);
            Mock.Get(actionContext.HttpContext.Request).SetupGet(x => x.Scheme).Returns("xyz");

            var headerDictionary = new HeaderDictionary();

            headerDictionary.Add(new KeyValuePair <string, StringValues>("Host", new StringValues("test.be:99")));
            Mock.Get(actionContext.HttpContext.Request).SetupGet(x => x.Headers).Returns(headerDictionary);

            var urlHelper = new Mock <IUrlHelper>().Object;

            // act
            var linkProvider = new LinkProvider(actionContextAccessorMock.Object, urlHelper, new TestApiExtensionOptions(new Web.Api.ApiExtensionOptions()));
            var fullUrl      = linkProvider.GetFullUrlBuilder("/v1/test");

            // assert
            Assert.Equal("xyz://test.be:99/v1/test", fullUrl.ToString());
        }
        public void GetFullUrlBuilder_BuildsFullUrlWithoutQueryString()
        {
            var actionContext = MockHelpers.ActionContext();

            var actionContextAccessorMock = new Mock <IActionContextAccessor>();

            actionContextAccessorMock.SetupGet(x => x.ActionContext).Returns(actionContext);

            var host = new HostString("test.be", 99);

            Mock.Get(actionContext.HttpContext.Request).SetupGet(x => x.Host).Returns(host);
            Mock.Get(actionContext.HttpContext.Request).SetupGet(x => x.Scheme).Returns("xyz");


            var urlHelper = new Mock <IUrlHelper>().Object;

            var linkProvider = new LinkProvider(actionContextAccessorMock.Object, urlHelper, new TestApiExtensionOptions(new Web.Api.ApiExtensionOptions()));
            var fullUrl      = linkProvider.GetFullUrlBuilder("/v1/test");

            Assert.Equal("xyz://test.be:99/v1/test", fullUrl.ToString());
        }