public void Deve_mapear_uma_pessoa() { var id = Guid.NewGuid(); DateTime dataDeNascimento = new DateTime(2019, 06, 17); const string nome = "Vitor"; const TipoDePessoa tipo = TipoDePessoa.Pretendete; var pessoaDto = new PessoaDto { Id = id, DataDeNascimento = dataDeNascimento, Nome = nome, Tipo = tipo }; var pessoaEsperada = new { Id = id, DataDeNascimento = dataDeNascimento, Nome = nome, Tipo = tipo }; var pessoaObtida = MapeadorDePessoa.Mapear(pessoaDto); pessoaEsperada.ToExpectedObject().ShouldMatch(pessoaObtida); }
public void Deve_classificar_as_familias_e_ordenalas_por_pontuacao() { var familiasDto = new[] { _familiaUm, _familiaDois }; var rendaUm = MapeadorDeRenda.Mapear(_rendaUmDto.Valor); var rendaDois = MapeadorDeRenda.Mapear(_rendaDoisDto.Valor); var pessoaUm = MapeadorDePessoa.Mapear(_pessoaUmDto); var pessoaDois = MapeadorDePessoa.Mapear(_pessoaDoisDto); var familiaUm = FluentBuilder <Familia> .New() .With(f => f.QuantidadeDeCriteriosAtendidos, 2) .With(f => f.Pontuacao, 4) .With(f => f.Status, Status.CadastroValido) .With(f => f.Id, _idFamilia) .Build(); pessoaUm.Adicionar(rendaUm); pessoaDois.Adicionar(rendaDois); familiaUm.Adicionar(pessoaUm); familiaUm.Adicionar(pessoaDois); var pessoaTres = MapeadorDePessoa.Mapear(_pessoaTresDto); var familiaDois = FluentBuilder <Familia> .New() .With(f => f.QuantidadeDeCriteriosAtendidos, 2) .With(f => f.Pontuacao, 6) .With(f => f.Status, Status.CadastroValido) .With(f => f.Id, _idFamiliaDois) .Build(); pessoaTres.Adicionar(rendaUm); familiaDois.Adicionar(pessoaTres); var familiasEsperadas = new[] { familiaDois, familiaUm }; var familiasObtidas = _classificacaoDeFamilias.Classificar(familiasDto); familiasEsperadas.ToExpectedObject(ctx => ctx.UseOrdinalComparison()).ShouldMatch(familiasObtidas); }