コード例 #1
0
ファイル: Tests.cs プロジェクト: jaropolk2/Quiz
        public void PodeCadastrarNovasCategorias()
        {
            IList<Assunto> listaCategorias = new List<Assunto>();
            listaCategorias.Add(new Assunto() { Name = "Romantismo" });
            listaCategorias.Add(new Assunto() { Name = "Neoclassicismo" });
            listaCategorias.Add(new Assunto() { Name = "Cubismo" });

            IQuizSetup serviceSetup = null;

            using (var contexto = new EFUnitOfWork(new GallerySMContext()))
            {
                var repositorio = new QuizRepositorio(contexto);
                serviceSetup = new QuizSetup(repositorio);
                serviceSetup.CriaNovasCategorias(listaCategorias);
            }

            listaCategorias = new List<Assunto>();
            listaCategorias.Add(new Assunto() { Name = "Romantismo filha" });
            listaCategorias.Add(new Assunto() { Name = "Neoclassicismo filha" });
            listaCategorias.Add(new Assunto() { Name = "Cubismo filha" });
            using (var contexto = new EFUnitOfWork(new GallerySMContext()))
            {
                var repositorio = new QuizRepositorio(contexto);
                var primeiraCategoria = repositorio.ListaCategoriasExistentes().Where(c => c.AssuntoId == 1).FirstOrDefault();
                foreach (var c in listaCategorias)
                    primeiraCategoria.ChildAssuntos.Add(c);
                contexto.Save();
            }
        }
コード例 #2
0
ファイル: QuizSetupAplicacao.cs プロジェクト: jaropolk2/Quiz
 public IList<QuizModel> DisponiveisParaAssociarPerguntas()
 {
     using (_contexto = new EFUnitOfWork(new GallerySMContext()))
     {
         _repositorio = new QuizRepositorio(_contexto);
         return _repositorio.DisponiveisParaAssociarPerguntas().ToModel();
     }
 }
コード例 #3
0
ファイル: QuizSetupAplicacao.cs プロジェクト: jaropolk2/Quiz
 public IList<AssuntoModel> AssuntosDisponiveis()
 {
     using (_contexto = new EFUnitOfWork(new GallerySMContext()))
     {
         _repositorio = new QuizRepositorio(_contexto);
         return _repositorio.ListaCategoriasExistentes().ToModel();
     }
 }
コード例 #4
0
ファイル: QuizSetupAplicacao.cs プロジェクト: jaropolk2/Quiz
 public void CriaNovoAssunto(AssuntoModel assuntoModel)
 {
     using (_contexto = new EFUnitOfWork(new GallerySMContext()))
     {
         _repositorio = new QuizRepositorio(_contexto);
         _quizSetup = new QuizSetup(_repositorio);
         _quizSetup.CriaNovaCategoria(assuntoModel.ToDomain());
     }
 }
コード例 #5
0
ファイル: Tests.cs プロジェクト: jaropolk2/Quiz
        public void PodeCriarUmNovoUsuario()
        {
            Usuario usuario = new Usuario()
            {
                Nome = "Rafael",
                Sobrenome = "Pires",
                Email = "*****@*****.**",
                CriadoEm = DateTime.Now
            };

            using (var contexto = new EFUnitOfWork(new GallerySMContext()))
            {
                IUsuarioRepository repositorioUsuarios = new UsuarioRepositorio(contexto);
                repositorioUsuarios.Salvar(usuario);
            }
        }
コード例 #6
0
ファイル: QuizSetupAplicacao.cs プロジェクト: jaropolk2/Quiz
        public void CriaNovoQuiz(QuizModel quizModel)
        {
            using (_contexto = new EFUnitOfWork(new GallerySMContext()))
            {
                _repositorio = new QuizRepositorio(_contexto);
                IQuizSetup serviceSetup = new QuizSetup(_repositorio);

                Assunto categoria = _repositorio.ListaCategoriasExistentes().Where(c => c.AssuntoId == quizModel.CategoriaId).FirstOrDefault();

                Quiz quiz = QuizFactory.CriaQuiz(categoria, quizModel.Descricao, quizModel.ExpiraEm, true);
                foreach (var perguntaModel in quizModel.Perguntas)
                {
                    var pergunta = quiz.AdicionaPergunta(perguntaModel.Descricao, perguntaModel.Dificuldade == 1 ? Dificuldade.Basico : Dificuldade.Avancado);
                    foreach (var respostaModel in perguntaModel.PossiveisRespostas)
                    {
                        pergunta.AdicionarResposta(respostaModel.Descricao, respostaModel.Correta);
                    }
                }
                serviceSetup.Salva(quiz);
            }
        }
コード例 #7
0
ファイル: QuizAplicacao.cs プロジェクト: rafaelpiresm/Gallery
 public QuizAplicacao()
 {
     contexto = new EFUnitOfWork(new GallerySMContext());
 }
コード例 #8
0
ファイル: Tests.cs プロジェクト: jaropolk2/Quiz
        public void PodeCriarUmQuizComPerguntas()
        {
            using (var contexto = new EFUnitOfWork(new GallerySMContext()))
            {
                var repositorio = new QuizRepositorio(contexto);

                //IQuizService serviceQuiz = new QuizService(repositorio);

                IQuizSetup serviceSetup = new QuizSetup(repositorio);

                Assunto categoria = repositorio.ListaCategoriasExistentes().Where(c => c.AssuntoId == 14).FirstOrDefault();

                IList<Resposta> possiveisRespostas = new List<Resposta>();

                Quiz quiz = QuizFactory.CriaQuiz(categoria, "Primeiro quiz", DateTime.Now.AddDays(15), true);

                for (int j = 0; j < 10; j++)
                {
                    var pergunta = quiz.AdicionaPergunta("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", Dificuldade.Basico);

                    for (int i = 0; i <= 3; i++)
                        pergunta.AdicionarResposta("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", false);

                    pergunta.AdicionarResposta("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", true);
                }
                try
                {
                    serviceSetup.Salva(quiz);
                }
                catch (Exception ex)
                {
                    throw ((DbEntityValidationException)ex);
                }

            }
        }