Beispiel #1
0
        public void Success()
        {
            var analyticsService = mr.Create <IAnalyticsService>();

            analyticsService.Setup(a => a.Add(It.IsAny <AnalyticsReport>(), CancellationToken.None)).Returns(Task.CompletedTask);
            var ipLookup = mr.Create <IExtremeIpLookup>();

            ipLookup.Setup(a => a.GetIpDetailsAsync(IPAddress.Loopback)).ReturnsT(new ResultObject()
            {
                Status = "success"
            });
            var logger = mr.Create <ILogger <AnalyticsMiddleware> >();
            var cs     = mr.Create <ICookieStorage>();

            cs.Setup(a => a.ReadThumbPrint(It.IsAny <HttpRequest>())).Returns(Option.Some(Guid.NewGuid()));

            var httpContext = GetHttpContext(mr);

            httpContext.Setup(s => s.Request).Returns(mr.Create <HttpRequest>().Object);
            httpContext.Setup(s => s.Response).Returns(mr.Create <HttpResponse>().Object);
            var attr = new AnalyticsMiddleware(_ => Task.CompletedTask);

            attr.InvokeAsync(httpContext.Object, analyticsService.Object, ipLookup.Object, cs.Object, logger.Object).Wait();
            mr.VerifyAll();
        }
Beispiel #2
0
        public void Fail()
        {
            var analyticsService = mr.Create <IAnalyticsService>();
            var ipLookup         = mr.Create <IExtremeIpLookup>();

            ipLookup.Setup(a => a.GetIpDetailsAsync(IPAddress.Loopback)).ReturnsT(new ResultObject()
            {
                Status = "fail"
            });
            var logger = mr.Create <ILogger <AnalyticsMiddleware> >();
            var cs     = mr.Create <ICookieStorage>();
            var attr   = new AnalyticsMiddleware(_ => Task.CompletedTask);

            attr.InvokeAsync(GetHttpContext(mr).Object, analyticsService.Object, ipLookup.Object, cs.Object, logger.Object).Wait();
            mr.VerifyAll();
        }