public void AmountString(string amount, double convertedAmount, string culture) { // Arrange Thread.CurrentThread.CurrentCulture = new CultureInfo(culture, false); var fixture = new Fixture(); fixture.Behaviors.Add(new OmitOnRecursionBehavior()); var account = fixture.Create <AccountViewModel>(); var accountRepositorySetup = new Mock <IAccountService>(); accountRepositorySetup.Setup(x => x.SaveAccount(account.Account)); accountRepositorySetup.Setup(c => c.GetNotExcludedAccounts()).ReturnsAsync(new List <Account>()); accountRepositorySetup.Setup(c => c.GetExcludedAccounts()).ReturnsAsync(new List <Account>()); var viewmodel = new ModifyAccountViewModel(new Mock <IAccountService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object, new Mock <IMvxLogProvider>().Object, new Mock <IMvxNavigationService>().Object) { SelectedAccount = account }; // Act viewmodel.AmountString = amount; // Assert viewmodel.AmountString.ShouldEqual(convertedAmount.ToString("N", CultureInfo.CurrentCulture)); }
public void Cancel_SelectedAccountReseted() { string name = "Account"; var baseAccount = new Account { Id = 5, Name = name }; var account = new Account { Id = 5, Name = name }; var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(x => x.FindById(It.IsAny <int>())).Returns(baseAccount); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object) { IsEdit = true, SelectedAccount = account }; viewmodel.SelectedAccount.Name = "foooo"; viewmodel.CancelCommand.Execute(); viewmodel.SelectedAccount.Name.ShouldBe(name); }
public void SaveCommand_SavesAccount() { // Arrange var accountList = new List <Account>(); var accountServiceMock = new Mock <IAccountService>(); accountServiceMock.Setup(c => c.GetExcludedAccounts()).ReturnsAsync(new List <Account>()); accountServiceMock.Setup(c => c.GetNotExcludedAccounts()) .ReturnsAsync(new List <Account>()); accountServiceMock.Setup(c => c.SaveAccount(It.IsAny <Account>())) .Callback((Account acc) => { accountList.Add(acc); }) .Returns(Task.CompletedTask); var account = new AccountViewModel(new Account()) { Name = "Test AccountViewModel" }; var viewmodel = new ModifyAccountViewModel(accountServiceMock.Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object) { IsEdit = false, SelectedAccount = account }; // Act viewmodel.SaveCommand.Execute(); // Assert Assert.Equal(1, accountList.Count); }
public void SaveCommand_SavesAccount() { // Arrange var accountList = new List <AccountViewModel>(); var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(c => c.GetList(It.IsAny <Expression <Func <AccountViewModel, bool> > >())) .Returns(accountList); accountRepositorySetup.Setup(c => c.Save(It.IsAny <AccountViewModel>())) .Callback((AccountViewModel acc) => { accountList.Add(acc); }); var settingsManagerMock = new Mock <ISettingsManager>(); var account = new AccountViewModel { Id = 1, Name = "Test AccountViewModel" }; var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object, settingsManagerMock.Object, new Mock <IBackupManager>().Object) { IsEdit = false, SelectedAccount = account }; // Act viewmodel.SaveCommand.Execute(); // Assert Assert.Equal(1, accountList.Count); }
public ActionResult EditEmployeeAccount(string id) { if (id == null) { return(NotFound()); } var account = _context.Users.FirstOrDefault(c => c.Id == id); if (account == null) { return(NotFound()); } ModifyAccountViewModel mvm = new ModifyAccountViewModel(); mvm.Email = account.Email; mvm.FirstName = account.FirstName; mvm.LastName = account.LastName; mvm.Address = account.Address; mvm.City = account.City; mvm.State = account.State; mvm.Zip = account.Zip; mvm.PhoneNumber = account.PhoneNumber; mvm.CreditCard1 = account.CreditCard1; mvm.CreditCard2 = account.CreditCard2; mvm.CreditCard3 = account.CreditCard3; return(View(mvm)); }
public void Save_UpdateTimeStamp() { // Arrange var account = new AccountViewModel { Id = 0, Name = "AccountViewModel" }; var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(x => x.Save(account)).Returns(true); accountRepositorySetup.Setup(x => x.GetList(null)).Returns(() => new List <AccountViewModel>()); var localDateSetting = DateTime.MinValue; var settingsManagerMock = new Mock <ISettingsManager>(); settingsManagerMock.SetupSet(x => x.LastDatabaseUpdate = It.IsAny <DateTime>()) .Callback((DateTime x) => localDateSetting = x); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object, settingsManagerMock.Object, new Mock <IBackupManager>().Object) { IsEdit = false, SelectedAccount = account }; // Act viewmodel.SaveCommand.Execute(); // Assert localDateSetting.ShouldBeGreaterThan(DateTime.Now.AddSeconds(-1)); localDateSetting.ShouldBeLessThan(DateTime.Now.AddSeconds(1)); }
public void AmountString(string amount, double convertedAmount, string culture) { // Arrange Thread.CurrentThread.CurrentCulture = new CultureInfo(culture, false); var account = new Fixture().Create <AccountViewModel>(); var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(x => x.Save(account)).Returns(true); accountRepositorySetup.Setup(x => x.GetList(null)).Returns(() => new List <AccountViewModel>()); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object) { SelectedAccount = account }; // Act viewmodel.AmountString = amount; // Assert viewmodel.AmountString.ShouldBe(convertedAmount.ToString("N", CultureInfo.CurrentCulture)); }
public void SaveCommand_Does_Not_Allow_Duplicate_Names2() { var accountRepo = new Mock <IAccountRepository>(); accountRepo.SetupAllProperties(); accountRepo.Setup(c => c.Save(It.IsAny <Account>())) .Callback((Account acc) => { accountRepo.Object.Data.Add(acc); }); accountRepo.Object.Data = new ObservableCollection <Account>(); var account = new Account { Id = 1, Name = "Test Account" }; var newAccount = new Account { Name = "TESt Account" }; accountRepo.Object.Data.Add(account); var viewmodel = new ModifyAccountViewModel(accountRepo.Object, new Mock <IDialogService>().Object) { IsEdit = false, SelectedAccount = newAccount }; viewmodel.SaveCommand.Execute(); Assert.AreEqual(1, accountRepo.Object.Data.Count); }
public void SaveCommand_Does_Not_Allow_Duplicate_Names() { var accountList = new List <Account>(); var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(c => c.GetList(It.IsAny <Expression <Func <Account, bool> > >())) .Returns(accountList); accountRepositorySetup.Setup(c => c.Save(It.IsAny <Account>())) .Callback((Account acc) => { accountList.Add(acc); }); var account = new Account { Id = 1, Name = "Test Account" }; var newAccount = new Account { Name = "Test Account" }; accountList.Add(account); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object) { IsEdit = false, SelectedAccount = newAccount }; viewmodel.SaveCommand.Execute(); Assert.AreEqual(1, accountList.Count()); }
public void Save_UpdateTimeStamp() { var account = new Account { Id = 0, Name = "account" }; var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.SetupAllProperties(); accountRepositorySetup.Setup(x => x.AddPaymentAmount(new Payment())).Returns(true); accountRepositorySetup.Setup(x => x.Save(account)).Returns(true); accountRepositorySetup.Setup(x => x.Data).Returns(() => new ObservableCollection <Account>()); var accountRepo = accountRepositorySetup.Object; var viewmodel = new ModifyAccountViewModel(accountRepo, new Mock <IDialogService>().Object) { IsEdit = false, SelectedAccount = account }; viewmodel.SaveCommand.Execute(); localDateSetting.ShouldBeGreaterThan(DateTime.Now.AddSeconds(-1)); localDateSetting.ShouldBeLessThan(DateTime.Now.AddSeconds(1)); }
public void Title_AddAccount_CorrectTitle() { var viewmodel = new ModifyAccountViewModel(new Mock <IAccountRepository>().Object, new Mock <IDialogService>().Object) { IsEdit = false }; viewmodel.Title.ShouldBe(Strings.AddAccountTitle); }
public void Title_AddAccount_CorrectTitle() { var viewmodel = new ModifyAccountViewModel(new Mock<IAccountRepository>().Object, new Mock<IDialogService>().Object, new Mock<ISettingsManager>().Object, new Mock<IBackupManager>().Object) { IsEdit = false}; viewmodel.Title.ShouldBe(Strings.AddAccountTitle); }
public async Task <IActionResult> OnGetAsync(string userId) { var userEntity = _userManager.Users.FirstOrDefault(u => u.Id == userId); //User account object var userViewModel = Mapper.Map <ModifyAccountViewModel>(userEntity); //userViewModel mapped var userRoles = await _userManager.GetRolesAsync(userEntity); //user's assigned Roles var allRoles = _roleManager.Roles.Select(r => r.Name); //all available roles userViewModel.AddRoles(allRoles, userRoles); //Adding user Roles to viewmodel. CurrentUserSettings = userViewModel; //Applying viewmodel class variable CurrentSettings. return(Page()); }
public MainViewModel() { lobbyViewModel_ = new LobbyViewModel(); loginViewModel_ = new LoginViewModel(); createAccountModel_ = new CreateAccountViewModel(); modifyAccountViewModel_ = new ModifyAccountViewModel(); CallbackMediator.Subscribe("ToLobby", ToLobby); CallbackMediator.Subscribe("ToLogin", ToLogin); CallbackMediator.Subscribe("ToCreateAccount", ToCreateAccount); CallbackMediator.Subscribe("ToModifyAccount", ToModifyAccount); CurrentViewModel = loginViewModel_; }
public void Title_AddAccount_CorrectTitle() { // Arrange var viewmodel = new ModifyAccountViewModel(new Mock <IAccountRepository>().Object, new Mock <IDialogService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object) { IsEdit = false }; // Act / Assert viewmodel.Title.ShouldBe(Strings.AddAccountTitle); }
public void Title_EditAccount_CorrectTitle() { var accountname = "Sparkonto"; var viewmodel = new ModifyAccountViewModel(new Mock <IAccountRepository>().Object, new Mock <IDialogService>().Object) { IsEdit = true, SelectedAccount = new Account { Id = 3, Name = accountname } }; viewmodel.Title.ShouldBe(string.Format(Strings.EditAccountTitle, accountname)); }
public void Title_AddAccount_CorrectTitle() { // Arrange var viewmodel = new ModifyAccountViewModel(new Mock <IAccountService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object, new Mock <IMvxLogProvider>().Object, new Mock <IMvxNavigationService>().Object) { IsEdit = false }; // Act / Assert viewmodel.Title.ShouldEqual(Strings.AddAccountTitle); }
public void Title_AddAccount_CorrectTitle() { var accountname = "Sparkonto"; var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.SetupGet(x => x.Selected).Returns(new Account { Id = 2, Name = accountname }); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object) { IsEdit = false }; viewmodel.Title.ShouldBe(Strings.AddAccountTitle); }
public void Title_EditAccount_CorrectTitle() { var accountname = "Sparkonto"; var settingsManagerMock = new Mock<ISettingsManager>(); var viewmodel = new ModifyAccountViewModel(new Mock<IAccountRepository>().Object, new Mock<IDialogService>().Object, settingsManagerMock.Object, new Mock<IBackupManager>().Object) { IsEdit = true, SelectedAccount = new AccountViewModel {Id = 3, Name = accountname} }; viewmodel.Title.ShouldBe(string.Format(Strings.EditAccountTitle, accountname)); }
public void SaveCommand_DoesNotAllowDuplicateNames(string name1, string name2) { // Arrange var accountList = new List <Account>(); var accountRepositorySetup = new Mock <IAccountService>(); accountRepositorySetup.Setup(c => c.GetExcludedAccounts()).ReturnsAsync(new List <Account>()); accountRepositorySetup.Setup(c => c.GetNotExcludedAccounts()) .ReturnsAsync(accountList); accountRepositorySetup.Setup(c => c.SaveAccount(It.IsAny <Account>())) .Callback((Account acc) => { accountList.Add(acc); }); var account = new Account { Data = { Id = 1, Name = name1 } }; var accountViewModel = new AccountViewModel(account) { Name = name2 }; accountList.Add(account); var viewmodel = new ModifyAccountViewModel(new Mock <IAccountService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object, new Mock <IMvxLogProvider>().Object, new Mock <IMvxNavigationService>().Object) { IsEdit = false, SelectedAccount = accountViewModel }; // Act viewmodel.SaveCommand.Execute(); // Assert Assert.Single(accountList); }
public IActionResult EditEmployeeAccount(ModifyAccountViewModel account) { if (ModelState.IsValid) { try { AppUser dbAccount = _context.Users .FirstOrDefault(c => c.Id == account.Id); dbAccount.FirstName = account.FirstName; dbAccount.LastName = account.LastName; dbAccount.Email = account.Email; dbAccount.UserName = account.Email; dbAccount.Address = account.Address; dbAccount.City = account.City; dbAccount.State = account.State; dbAccount.Zip = account.Zip; dbAccount.PhoneNumber = account.PhoneNumber; dbAccount.CreditCard1 = account.CreditCard1; dbAccount.CreditCard2 = account.CreditCard2; dbAccount.CreditCard3 = account.CreditCard3; _context.Update(dbAccount); _context.SaveChanges(); //edit department/course relationships } catch (DbUpdateConcurrencyException) { if (!AccountExists(account.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(account)); }
public void Title_EditAccount_CorrectTitle() { // Arrange var accountname = "Sparkonto"; var viewmodel = new ModifyAccountViewModel(new Mock <IAccountService>().Object, new Mock <ISettingsManager>().Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object) { IsEdit = true, SelectedAccount = new AccountViewModel(new Account()) { Id = 3, Name = accountname } }; // Act / Assert viewmodel.Title.ShouldBe(string.Format(Strings.EditAccountTitle, accountname)); }
public void Save_UpdateTimeStamp() { var account = new Account { Id = 0, Name = "account" }; var accountRepositorySetup = new Mock <IAccountRepository>(); accountRepositorySetup.Setup(x => x.Save(account)).Returns(true); accountRepositorySetup.Setup(x => x.GetList(null)).Returns(() => new List <Account>()); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock <IDialogService>().Object) { IsEdit = false, SelectedAccount = account }; viewmodel.SaveCommand.Execute(); localDateSetting.ShouldBeGreaterThan(DateTime.Now.AddSeconds(-1)); localDateSetting.ShouldBeLessThan(DateTime.Now.AddSeconds(1)); }
public void Save_UpdateTimeStamp() { // Arrange var account = new AccountViewModel(new Account { Data = { Id = 0, Name = "AccountViewModel" } }); var accountRepositorySetup = new Mock <IAccountService>(); accountRepositorySetup.Setup(x => x.SaveAccount(account.Account)); accountRepositorySetup.Setup(c => c.GetNotExcludedAccounts()).ReturnsAsync(new List <Account>()); accountRepositorySetup.Setup(c => c.GetExcludedAccounts()).ReturnsAsync(new List <Account>()); var localDateSetting = DateTime.MinValue; var settingsManagerMock = new Mock <ISettingsManager>(); settingsManagerMock.SetupSet(x => x.LastDatabaseUpdate = It.IsAny <DateTime>()) .Callback((DateTime x) => localDateSetting = x); var viewmodel = new ModifyAccountViewModel(new Mock <IAccountService>().Object, settingsManagerMock.Object, new Mock <IBackupManager>().Object, new Mock <IDialogService>().Object, new Mock <IMvxLogProvider>().Object, new Mock <IMvxNavigationService>().Object) { IsEdit = false, SelectedAccount = account }; // Act viewmodel.SaveCommand.Execute(); // Assert localDateSetting.ShouldBeGreaterThan(DateTime.Now.AddSeconds(-1)); localDateSetting.ShouldBeLessThan(DateTime.Now.AddSeconds(1)); }
public async Task <IActionResult> OnPostAsync([FromForm] ModifyAccountViewModel modifyAccountViewModel) { var user = _userManager.Users .FirstOrDefault(u => u.Id == modifyAccountViewModel.UserId); //The user that is to be modified. var userRoles = await _userManager.GetRolesAsync(user) as List <string>; //All that user's roles var availableRoles = _roleManager.Roles; //All available roles var modifiedRoles = modifyAccountViewModel.Roles.Keys.ToList(); //modified user roles var removeList = new List <string>(); //List of roles to remove var addList = new List <string>(); //List of roles to add //Set lockout to whatever is set in the model bind (lazy) await _userManager .SetLockoutEnabledAsync(user, modifyAccountViewModel.LockoutEnabled); //deal with empty roles if (modifiedRoles.Count == 0 && userRoles.Count == 0) { return(RedirectToPage(@"AdministerAccounts")); } //deal with 1 set of empty roles if (modifiedRoles.Count == 0) { removeList = userRoles.ToList(); } else if (userRoles.Count == 0) { addList = modifiedRoles; } else { //Add role to removeList by cross referencing the lists foreach (var r in userRoles) { if (!modifiedRoles.Contains(r)) { removeList.Add(r); } } //Add roles to the addList by cross referencing hte lists. foreach (var r in modifiedRoles) { if (!userRoles.Contains(r)) { addList.Add(r); } } } if (removeList.Count == 0 && addList.Count == 0) { return(RedirectToPage(@"AdministerAccounts")); } //Remove roles, throw new exception if failed. var remRes = await _userManager.RemoveFromRolesAsync(user, removeList); if (!remRes.Succeeded) { throw new Exception($"Failed to remove roles"); } //Add roles, throw new exception if failed. var addRes = await _userManager.AddToRolesAsync(user, addList); if (!addRes.Succeeded) { throw new Exception($"Failed to add roles"); } return(RedirectToPage(@"AdministerAccounts")); }
public void SaveCommand_Does_Not_Allow_Duplicate_Names2() { var accountList = new List<AccountViewModel>(); var settingsManagerMock = new Mock<ISettingsManager>(); var accountRepositorySetup = new Mock<IAccountRepository>(); accountRepositorySetup.Setup(c => c.GetList(It.IsAny<Expression<Func<AccountViewModel, bool>>>())) .Returns(accountList); accountRepositorySetup.Setup(c => c.Save(It.IsAny<AccountViewModel>())) .Callback((AccountViewModel acc) => { accountList.Add(acc); }); var account = new AccountViewModel { Id = 1, Name = "Test AccountViewModel" }; var newAccount = new AccountViewModel { Name = "TESt AccountViewModel" }; accountList.Add(account); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock<IDialogService>().Object, settingsManagerMock.Object, new Mock<IBackupManager>().Object) { IsEdit = false, SelectedAccount = newAccount }; viewmodel.SaveCommand.Execute(); Assert.AreEqual(1, accountList.Count); }
public void Save_UpdateTimeStamp() { var account = new AccountViewModel {Id = 0, Name = "AccountViewModel"}; var accountRepositorySetup = new Mock<IAccountRepository>(); accountRepositorySetup.Setup(x => x.Save(account)).Returns(true); accountRepositorySetup.Setup(x => x.GetList(null)).Returns(() => new List<AccountViewModel>()); var localDateSetting = DateTime.MinValue; var settingsManagerMock = new Mock<ISettingsManager>(); settingsManagerMock.SetupSet(x => x.LastDatabaseUpdate = It.IsAny<DateTime>()) .Callback((DateTime x) => localDateSetting = x); var viewmodel = new ModifyAccountViewModel(accountRepositorySetup.Object, new Mock<IDialogService>().Object, settingsManagerMock.Object, new Mock<IBackupManager>().Object) { IsEdit = false, SelectedAccount = account }; viewmodel.SaveCommand.Execute(); localDateSetting.ShouldBeGreaterThan(DateTime.Now.AddSeconds(-1)); localDateSetting.ShouldBeLessThan(DateTime.Now.AddSeconds(1)); }