public void Authenticate_ExistingUser()
        {
            var email    = "*****@*****.**";
            var loginDto = new LoginDto {
                Email = email
            };

            _unitOfWorkMock.Setup(uof => uof.FacultyGenericRepository.Find(null));
            var user = new IdentityUser()
            {
                Email = email
            };
            var claim = new ClaimsIdentity()
            {
                Label = email
            };
            var userStore   = Mock.Of <IUserStore <IdentityUser> >();
            var userManager = new Mock <ApplicationUserManager>(userStore);

            userManager.Setup(_ => _.FindAsync(email, It.IsAny <string>())).Returns(Task.FromResult(user));
            userManager.Setup(_ => _.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie)).Returns(Task.FromResult(claim));
            _unitOfWorkMock.SetupGet(uof => uof.UserManager).Returns(userManager.Object);

            var actual = _sut.Authenticate(loginDto);

            Assert.Equal(email, actual.Result.Label);
        }