Ejemplo n.º 1
0
        public When_Unauthenticated_User_Accesses_The_Service()
        {
            var defaultHttpContext          = Substitute.For <HttpContext>();
            var serviceStatusHistoryService = Substitute.For <IServiceStatusHistoryService>();

            defaultHttpContext.User.Identity.IsAuthenticated.Returns(false);

            var routeData     = new RouteData();
            var actionContext = new ActionContext(defaultHttpContext, routeData, new ActionDescriptor());

            _actionExecutingContext = new ActionExecutingContext(
                actionContext,
                new List <IFilterMetadata>(),
                new Dictionary <string, object>(),
                null);

            var filterAttribute = new ServiceUnavailableFilterAttribute(serviceStatusHistoryService);

            var actionExecutionDelegate = Substitute.For <ActionExecutionDelegate>();

            filterAttribute.OnActionExecutionAsync(_actionExecutingContext, actionExecutionDelegate).GetAwaiter().GetResult();
        }
Ejemplo n.º 2
0
        public When_User_Is_Signing_Out()
        {
            var claimsList = new List <Claim>
            {
                new Claim(ClaimTypes.Role, RolesExtensions.StandardUser)
            };

            var user = new ClaimsPrincipal(new ClaimsIdentity(claimsList, "AuthenticationType"));

            var defaultHttpContext = Substitute.For <HttpContext>();

            defaultHttpContext.User = user;

            var routeData = new RouteData();

            routeData.Values.Add("controller", "Account");
            routeData.Values.Add("action", nameof(AccountController.SignOut));

            var controllerActionDescriptor = new ControllerActionDescriptor
            {
                ControllerName = "Account",
                ActionName     = nameof(AccountController.SignOut)
            };

            var actionContext = new ActionContext(defaultHttpContext, routeData, controllerActionDescriptor);

            _actionExecutingContext = new ActionExecutingContext(
                actionContext,
                new List <IFilterMetadata>(),
                new Dictionary <string, object>(),
                null);

            var serviceStatusHistoryService = Substitute.For <IServiceStatusHistoryService>();
            var filterAttribute             = new ServiceUnavailableFilterAttribute(serviceStatusHistoryService);

            var actionExecutionDelegate = Substitute.For <ActionExecutionDelegate>();

            filterAttribute.OnActionExecutionAsync(_actionExecutingContext, actionExecutionDelegate).GetAwaiter().GetResult();
        }