public void Criar(MatriculaDto matriculaDto) { var curso = _cursoRepositorio.ObterPorId(matriculaDto.CursoId); var aluno = _alunoRepositorio.ObterPorId(matriculaDto.AlunoId); ValidadorDeRegra.Novo() .Quando(curso == null, Resource.CursoNaoEncontrado) .Quando(aluno == null, Resource.AlunoNaoEncontrado) .DispararExcecaoSeExistir(); var matricula = new CursoOnline.Dominio.Matriculas .Matricula(aluno, curso, matriculaDto.ValorPago); _matriculaRepositorio.Adicionar(matricula); }
public void DeveCriarMatricula() { // Arrange var curso = CursoBuilder.Novo().ComPublicoAlvo(PublicoAlvo.Empreendedor).Build(); var matriculaEsperada = new { Aluno = AlunoBuilder.Novo().ComPublicoAlvo(PublicoAlvo.Empreendedor).Build(), Curso = curso, ValorPago = Convert.ToDecimal(curso.Valor) }; // Act var matricula = new CursoOnline.Dominio.Matriculas.Matricula(matriculaEsperada.Aluno, matriculaEsperada.Curso, matriculaEsperada.ValorPago); // Assert matriculaEsperada.ToExpectedObject().ShouldMatch(matricula); }