public IHttpActionResult SaveBankAccount(EditPlayerBankAccountData model) { var isExistingBankAccount = model.Id.HasValue; VerifyPermission(isExistingBankAccount ? Permissions.Update : Permissions.Create, Modules.PlayerBankAccount); if (isExistingBankAccount) { var editValidationResult = _playerBankAccountCommands.ValidateThatPlayerBankAccountCanBeEdited(model); if (!editValidationResult.IsValid) { return(Ok(ValidationExceptionResponse(editValidationResult.Errors))); } _playerBankAccountCommands.Edit(model); return(Ok(new { Result = "success" })); } var validationResult = _playerBankAccountCommands.ValidateThatPlayerBankAccountCanBeAdded(model); if (!validationResult.IsValid) { return(Ok(ValidationExceptionResponse(validationResult.Errors))); } _playerBankAccountCommands.Add(model); return(Ok(new { Result = "success" })); }
public void Can_edit_player_bank_account() { var data = CreatePlayerBankAccountData(); var player = _paymentRepository.Players.First(); data.PlayerId = player.Id; var bank = _paymentRepository.Banks.First(); data.Bank = bank.Id; data.AccountName = player.GetFullName(); _playerBankAccountCommands.Add(data); var playerBankAccount = _paymentRepository.PlayerBankAccounts.First(); Assert.That(playerBankAccount, Is.Not.Null); Assert.That(playerBankAccount.AccountNumber, Is.EqualTo(data.AccountNumber)); var newAccountName = TestDataGenerator.GetRandomString(); data.AccountName = newAccountName; data.Id = playerBankAccount.Id; _playerBankAccountCommands.Edit(data); playerBankAccount = _paymentRepository.PlayerBankAccounts.First(); Assert.That(playerBankAccount, Is.Not.Null); Assert.That(playerBankAccount.AccountName, Is.EqualTo(newAccountName)); }