public void Deveria_atualizar_o_proponente_recebido_na_proposta() { var proposalId = Guid.NewGuid(); var proponentId = Guid.NewGuid(); var proponentName = "Batman"; var proponentAge = 30; var proponentMonthlyIncome = 3_000M; var proponentIsMain = true; List <Proposal> proposals = new List <Proposal>() { new Proposal(proposalId, 0, 0) .Add(new Proponent(proponentId, "old", 0, 0, false)) }; String stringEvent = $"{Guid.NewGuid()},proposal,created,{DateTime.Now},{proposalId}," + $"{proponentId},{proponentName},{proponentAge},{proponentMonthlyIncome},{proponentIsMain}"; var @event = new ProponentUpdatedEvent(stringEvent.Split(',')); @event.Change(ref proposals); var proposal = proposals.First(); proposal.Proponents.Should().HaveCount(1); var proponent = proposal.Proponents.First(); proponent.Id.Should().Be(proponentId); proponent.Name.Should().Be(proponentName); proponent.Age.Should().Be(proponentAge); proponent.MonthlyIncome.Should().Be(proponentMonthlyIncome); proponent.IsMain.Should().Be(proponentIsMain); }
public void Consume(ProponentUpdatedEvent ev) { var currentProposal = _repo.GetById(ev.ProposalId); var proponent = currentProposal.Proponents.Single(w => w.Id == ev.ProponentId); proponent.Name = ev.Name; proponent.Age = ev.Age; proponent.MonthlyIncome = ev.MonthlyIncome; proponent.IsMain = ev.IsMain; currentProposal.Events.Add(ev); _repo.Update(currentProposal); }