public void Can_create_DeposeCash_Command() { var id = Guid.NewGuid(); var funds = 250; var @command = new DeposeCash(id, funds); Assert.NotNull(@command); Assert.Equal(id, @command.AccountId); Assert.Equal(funds, @command.Funds); }
public CommandResponse Handle(DeposeCash command) { if (!_repository.TryGetById <AccountAggregate.BankAccount>(command.AccountId, out var account)) { throw new InvalidOperationException("No account with such ID"); } account.DeposeCash(command.Funds, new DeposedCash(command.AccountId, command.Funds)); _repository.Save(account); return(command.Succeed()); }
public object CommandDeposeCash() { commander = new RequestSocket(">tcp://localhost:5555"); using (var stream = new MemoryStream()) { var command = new DeposeCash(Guid.NewGuid(), 100); Serializer.Serialize <DeposeCash>(stream, command); commander.SendFrame(stream.ToArray()); var @event = commander.ReceiveFrameString(); return(@event); } }