public async Task Transfer_UserUseNegativeAmount_CauseException() { var userModel = new UserModel { Email = "*****@*****.**", Password = "******", ConfirmPassword = "******", UserName = "******" }; await _repo.RegisterUser(userModel); var user1 = _context.Users.Include(x => x.Account).Single(x => x.Email == "*****@*****.**"); var userModel2 = new UserModel { Email = "*****@*****.**", Password = "******", ConfirmPassword = "******", UserName = "******" }; await _repo.RegisterUser(userModel2); var user2 = _context.Users.Include(x => x.Account).Single(x => x.Email == "*****@*****.**"); _context.SaveChanges(); var cmd = new AddTransactionCommandHandler(_context); var command = new AddTransactionCommand(user1.Id, user2.Id, -50); Assert.Throws <ArgumentException>(() => cmd.Execute(command)); }
public async Task Transfer_UserSent20_BallanceDecreaseBy20() { var userModel = new UserModel { Email = "*****@*****.**", Password = "******", ConfirmPassword = "******", UserName = "******" }; await _repo.RegisterUser(userModel); var user1 = _context.Users.Include(x => x.Account).Single(x => x.Email == "*****@*****.**"); var userModel2 = new UserModel { Email = "*****@*****.**", Password = "******", ConfirmPassword = "******", UserName = "******" }; await _repo.RegisterUser(userModel2); var user2 = _context.Users.Include(x => x.Account).Single(x => x.Email == "*****@*****.**"); _context.SaveChanges(); var cmd = new AddTransactionCommandHandler(_context); cmd.Execute(new AddTransactionCommand(user1.Id, user2.Id, 20)); var balance1 = new GetBalanceQuery(_context).Execute(user1.Account.Id); var balance2 = new GetBalanceQuery(_context).Execute(user2.Account.Id); Assert.AreEqual(480, balance1); Assert.AreEqual(520, balance2); }
public TransferController(IGetTemplateMatchNamesQuery getTemplateMatchNamesQuery, AddTransactionCommandHandler addTransactionCommandHandler) { _getTemplateMatchNamesQuery = getTemplateMatchNamesQuery; _addTransactionCommandHandler = addTransactionCommandHandler; }