public async Task Change_Password_Identity_Result_Success()
        {
            var controller = IdentityTests.GetUserController();
            var result     = await controller.ChangePassword(IdentityTests.GetChangePasswordViewModel("FFC42A97-C75D-4F8B-85D7-9044BE829755", "password1", "generatedToken"));

            Assert.IsAssignableFrom <ViewResult>(result);
            var viewResult = result as ViewResult;

            Assert.IsTrue(controller.ViewData.ModelState.ErrorCount == 0);
            Assert.IsTrue(viewResult.ViewData.ModelState.IsValid);
        }
        public async Task Change_Password_Invalid_Token()
        {
            var controller = IdentityTests.GetUserController();
            var result     = await controller.ChangePassword(IdentityTests.GetChangePasswordViewModel("FFC42A97-C75D-4F8B-85D7-9044BE829755", "password1", "failToken"));

            Assert.IsAssignableFrom <ViewResult>(result);

            var viewResult = result as ViewResult;

            Assert.IsTrue(controller.ViewData.ModelState.ErrorCount > 0);
            Assert.AreEqual(controller.ViewData.ModelState["InvalidToken"].ValidationState, ModelValidationState.Invalid);
            Assert.IsFalse(viewResult.ViewData.ModelState.IsValid);
        }
        public async Task Change_Password_User_NotFound()
        {
            var controller = IdentityTests.GetUserController();
            var result     = await controller.ChangePassword(IdentityTests.GetChangePasswordViewModel(string.Empty, "password1", "generatedToken"));

            Assert.IsAssignableFrom <ViewResult>(result);

            var viewResult = result as ViewResult;

            Assert.IsTrue(controller.ViewData.ModelState.ErrorCount > 0);
            Assert.AreEqual(controller.ViewData.ModelState["UserNotFound"].ValidationState, ModelValidationState.Invalid);
            Assert.IsFalse(viewResult.ViewData.ModelState.IsValid);
        }