public async Task Return_RolesView()
        {
            var userService     = new Mock <IUsersService>();
            var mockUserManager = GetUserManagerMock();
            var mockRoleManager = GetRoleManagerMock();
            var user            = GetUser();

            mockUserManager.Setup(u => u.FindByIdAsync(It.IsAny <string>()))
            .ReturnsAsync(user);
            mockUserManager.Setup(u => u.GetRolesAsync(It.IsAny <User>()))
            .ReturnsAsync(new List <string>()
            {
                "User"
            });

            var controller = new ManageUsersController(mockUserManager.Object, mockRoleManager.Object, userService.Object);

            var result = await controller.Roles(user.Id) as ViewResult;

            Assert.AreEqual("Roles", result.ViewName);
        }
        public async Task ReturnUser_AsUserWithRolesViewModel()
        {
            var userService     = new Mock <IUsersService>();
            var mockUserManager = GetUserManagerMock();
            var mockRoleManager = GetRoleManagerMock();
            var user            = GetUser();

            mockUserManager.Setup(u => u.FindByIdAsync(It.IsAny <string>()))
            .ReturnsAsync(user);
            mockUserManager.Setup(u => u.GetRolesAsync(It.IsAny <User>()))
            .ReturnsAsync(new List <string>()
            {
                "User"
            });

            var controller = new ManageUsersController(mockUserManager.Object, mockRoleManager.Object, userService.Object);

            var result = await controller.Roles(user.Id) as ViewResult;

            var viewModel = (UserWithRolesModel)result.ViewData.Model;

            Assert.AreEqual(user.Id, viewModel.Id);
        }