public void Reidratar_Condicao_Resultado() { // Arrange var anuncioId = Identity.CreateNew(); var foto = new Foto(new Uri("http://viperex.com.br/foto.png")); var anuncioCadastrado = new AnuncioCadastradoEvent(anuncioId, "Titulo", "Descricao", preco: 10.0M, condicaoUso: CondicaoUso.Novo, aceitoTroca: true); var fotoIncluida = new FotoAdicionadaAnuncioEvent(anuncioId, foto); var anuncioPublicado = new AnuncioPublicadoEvent(anuncioId); var eventos = new List <DomainEventBase>() { anuncioCadastrado, fotoIncluida, anuncioPublicado }; // Act var anuncio = Anuncio.Reidratar <Anuncio>(eventos); // Assert Assert.Equal(anuncioId, anuncio.Id); Assert.Equal("Titulo", anuncio.Titulo); Assert.Equal("Descricao", anuncio.Descricao); Assert.Equal(10.0m, anuncio.Preco); Assert.Equal(CondicaoUso.Novo, anuncio.CondicaoUso); Assert.True(anuncio.AceitoTroca); Assert.Equal(foto, anuncio.Fotos.Capa); Assert.Equal(Status.Publicado, anuncio.Status); }
private void Apply(AnuncioCadastradoEvent @event) { Titulo = @event.Titulo; Descricao = @event.Descricao; Preco = @event.Preco; Status = Status.Pendente; CondicaoUso = @event.CondicaoUso; Fotos = new AlbumFotos(); AceitoTroca = @event.AceitoTroca; }