public void Authenticated_User_Returns_View()
        {
            //Arrange
            var controller = this.GetHomeControllerInstance();
            var systemUser = new SystemUser
            {
                Id        = new Random().Next(),
                FirstName = "Joe",
                LastName  = "Bloggs",
                Email     = "*****@*****.**",
                Roles     = new List <Role>
                {
                    new Role
                    {
                        Name = "Administrator"
                    }
                }
            };

            string[] roles = systemUser.Roles.Select(i => i.Name).ToArray();

            controller.InitAuthentication(systemUser.Id, systemUser.FirstName, systemUser.LastName, systemUser.Email, roles);

            //Act
            var result = controller.Index() as ViewResult;

            //Assert
            Assert.IsNotNull(result);

            var actionExecutedContext = MockingHelpers.InitActionExecutedContext(controller, result);

            controller.AccessOnActionExecuted(actionExecutedContext);

            var viewModel = (HomeViewModel)result.Model;

            Assert.IsNotNull(viewModel);
            Assert.IsNotNull(viewModel.CurrentUser);
        }