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(); }
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(); }