public void SetUp()
        {
            var blogs = new List <Blog> {
                new Blog {
                    Nickname = Nickname
                }
            };

            var user = new User("Name", "EMail", "Password", false);

            user.Blogs = blogs;

            var mockRepo = new Mock <IUserService>();

            mockRepo.Setup(r => r.GetUser(1)).Returns(user);
            mockRepo.Setup(r => r.GetUserWithTheirBlogs(1)).Returns(user);

            var user2 = new User("Name", "EMail", "Password", false);

            mockRepo.Setup(r => r.GetUser(2)).Returns(user2);
            mockRepo.Setup(r => r.GetUserWithTheirBlogs(2)).Returns(user2);

            _userService     = mockRepo.Object;
            _mockHttpContext = new Mock <HttpContextBase>();
            _mockHttpContext.SetupProperty(h => h.User);

            HttpContextBase httpContextBase = _mockHttpContext.Object;

            // _userRepository
            var controllerContext = new ControllerContext(httpContextBase,
                                                          new RouteData(),
                                                          new BaseController(null));

            var actionDescriptor = new Mock <ActionDescriptor>();

            actionDescriptor.SetupGet(x => x.ActionName).Returns("Action_With_SomeAttribute");

            _actionExecutingContext =
                new AuthorizationContext(controllerContext,
                                         actionDescriptor.Object);

            _attribute             = new GetCookieUserFilterAttribute();
            _attribute.UserService = _userService;
        }
        public void SetUp()
        {
            var blogs = new List<Blog> {new Blog {Nickname = Nickname}};

            var user = new User("Name", "EMail", "Password", false);
            user.Blogs = blogs;

            var mockRepo = new Mock<IUserService>();

            mockRepo.Setup(r => r.GetUser(1)).Returns(user);
            mockRepo.Setup(r => r.GetUserWithTheirBlogs(1)).Returns(user);

            var user2 = new User("Name", "EMail", "Password", false);

            mockRepo.Setup(r => r.GetUser(2)).Returns(user2);
            mockRepo.Setup(r => r.GetUserWithTheirBlogs(2)).Returns(user2);

            _userService = mockRepo.Object;
            _mockHttpContext = new Mock<HttpContextBase>();
            _mockHttpContext.SetupProperty(h => h.User);

            HttpContextBase httpContextBase = _mockHttpContext.Object;

            // _userRepository
            var controllerContext = new ControllerContext(httpContextBase,
                                                          new RouteData(),
                                                          new BaseController(null));

            var actionDescriptor = new Mock<ActionDescriptor>();
            actionDescriptor.SetupGet(x => x.ActionName).Returns("Action_With_SomeAttribute");

            _actionExecutingContext =
                new AuthorizationContext(controllerContext,
                                         actionDescriptor.Object);

            _attribute = new GetCookieUserFilterAttribute();
            _attribute.UserService = _userService;
        }