コード例 #1
0
            public void HandelsNull()
            {
                var target = new UserHostExtractor();
                var result = target.Extract(null);

                Assert.AreEqual(string.Empty, result);
            }
コード例 #2
0
            public void HandelsNullRequest()
            {
                var target      = new UserHostExtractor();
                var httpContext = new Moq.Mock <HttpContextBase>();

                var result = target.Extract(httpContext.Object);

                Assert.AreEqual(string.Empty, result);
            }
コード例 #3
0
            public void ExtractsUserHostAddress()
            {
                var target      = new UserHostExtractor();
                var httpContext = new Moq.Mock <HttpContextBase>();
                var request     = new Moq.Mock <HttpRequestBase>();

                request.Setup(x => x.UserHostAddress).Returns("10.0.0.1");
                httpContext.Setup(x => x.Request).Returns(request.Object);

                var result = target.Extract(httpContext.Object);

                Assert.AreEqual("10.0.0.1", result);
            }
コード例 #4
0
            public void ExtractsUserHostAddressPlusHeader()
            {
                var target      = new UserHostExtractor();
                var httpContext = new Moq.Mock <HttpContextBase>();
                var request     = new Moq.Mock <HttpRequestBase>();
                var headers     = new NameValueCollection {
                    { "REMOTE_ADDR", "10.0.0.2" }
                };

                request.Setup(x => x.UserHostAddress).Returns("10.0.0.1");
                request.Setup(x => x.Headers).Returns(headers);
                httpContext.Setup(x => x.Request).Returns(request.Object);

                var result = target.Extract(httpContext.Object);

                Assert.AreEqual("10.0.0.1-10.0.0.2-", result);
            }
コード例 #5
0
            public void AddsFirstAddressFromForwardedHeader()
            {
                var target      = new UserHostExtractor();
                var httpContext = new Moq.Mock <HttpContextBase>();
                var request     = new Moq.Mock <HttpRequestBase>();
                var headers     = new NameValueCollection
                {
                    { "REMOTE_ADDR", "10.0.0.2" },
                    { "HTTP_X_FORWARDED_FOR", "10.0.0.3,10.0.0.4" },
                };

                request.Setup(x => x.UserHostAddress).Returns("10.0.0.1");
                request.Setup(x => x.Headers).Returns(headers);
                httpContext.Setup(x => x.Request).Returns(request.Object);

                var result = target.Extract(httpContext.Object);

                Assert.AreEqual("10.0.0.1-10.0.0.2-10.0.0.3", result);
            }