public void mostrarPregunta(PreguntaDTO unaPregunta) //Muestra una pregunta con sus opciones { preg.Text += unaPregunta.Id; //Muestro la Pregunta en el Label var respuestas = ControladorPreguntas.RespuestasDePregunta(iPreguntas[iNumeroPregunta]); List <RespuestaDTO> opciones = new List <RespuestaDTO>(); //Almacena las 4 opciones de respuestas foreach (RespuestaDTO respuesta in respuestas) { opciones.Add(respuesta); } List <RespuestaDTO> listaDesordenada = new List <RespuestaDTO>(); Random rnd = new Random(); while (opciones.Count > 0) //Desordena la Lista { int i = rnd.Next(opciones.Count); listaDesordenada.Add(opciones[i]); opciones.RemoveAt(i); } foreach (RespuestaDTO opcion in listaDesordenada) //Muestra las preguntas en RadioButtons { RadioButton rb = new RadioButton(); rb.Text = opcion.Texto; rb.Name = opcion.Id.ToString(); flowLayoutPanel1.Controls.Add(rb); } }
public void GetEstrategia_EstrategiaInvalida_DevuelveEstrategiaNula() { string nombre = "Google"; var estrategia = ControladorPreguntas.GetEstrategia(nombre); Assert.IsInstanceOfType(estrategia, typeof(EstrategiaNula)); }
public void GetEstrategia_EstrategiaValida_DevuelveEstrategia() { string nombre = "OpentDb"; var estrategia = ControladorPreguntas.GetEstrategia(nombre); Assert.IsInstanceOfType(estrategia, typeof(OpentDbEstrategiaObtenerPreguntas)); }
public void ObtenerPreguntasDeInternet_AtributosValidos_DevuelveListaDePreguntas() { string cantidad = "20"; string conjunto = "OpentDb"; string categoria = "Sports"; string dificultad = "easy"; var count = ControladorPreguntas.ObtenerPreguntasDeInternet(cantidad, conjunto, categoria, dificultad).ToList().Count; Assert.IsTrue(count >= 1); }
public void GetCategoriasConMasDeNPreguntas_ConjuntoValido_DevuelveCategorias() { String nombreConjunto = "OpentDb"; int cantidadDePreguntas = 35; var categorias = ControladorPreguntas.GetCategoriasConMasDeNPreguntas(nombreConjunto, cantidadDePreguntas); foreach (var categoria in categorias) { Assert.IsTrue(ControladorPreguntas.CantidadDePreguntasParaCategoria(categoria.Id) >= cantidadDePreguntas); } }
private void btnComenzarExamen_Click(object sender, EventArgs e) { if ((categoria.SelectedItem == null) || (dificultad.SelectedItem == null) || (conjunto.SelectedItem == null) || (cantidadPreguntas.Value == null)) { MessageBox.Show("Debe completar todos los campos para iniciar el examen"); } else { string categoriaSeleccionada = categoria.SelectedItem.ToString(); string dificultadSeleccionada = dificultad.SelectedItem.ToString(); string conjuntoSeleccionado = conjunto.SelectedItem.ToString(); int cantidadSeleccionada = Convert.ToInt32(cantidadPreguntas.Value); var categoriaPreguntas = ControladorPreguntas.GetCategoriasConMasDeNPreguntas(conjuntoSeleccionado, cantidadSeleccionada); //Si la categoria no tiene mas de N preguntas if (categoriaPreguntas.FirstOrDefault(c => c.Id == categoriaSeleccionada) == null) { int cantidadDePreguntasParaCategoria = ControladorPreguntas.CantidadDePreguntasParaCategoria(categoriaSeleccionada); MessageBoxButtons mensaje = MessageBoxButtons.YesNo; DialogResult result = MessageBox.Show($"Solo hay {cantidadDePreguntasParaCategoria} preguntas de {categoriaSeleccionada}. " + $"Quiere hacer el examen aunque no haya la cantidad de preguntas seleccionadas?", "Advertencia", mensaje); if (result == DialogResult.Yes) { ExamenDTO nuevoExamen = ControladorExamen.InicializarExamen(cantidadSeleccionada.ToString(), conjuntoSeleccionado, categoriaSeleccionada, dificultadSeleccionada); nuevoExamen = ControladorExamen.IniciarExamen(iNombreUsuario, nuevoExamen); this.Hide(); using (Ventana_Preguntas Vpreguntas = new Ventana_Preguntas(nuevoExamen)) Vpreguntas.ShowDialog(); this.Close(); } } else { ExamenDTO nuevoExamen = ControladorExamen.InicializarExamen(cantidadSeleccionada.ToString(), conjuntoSeleccionado, categoriaSeleccionada, dificultadSeleccionada); nuevoExamen = ControladorExamen.IniciarExamen(iNombreUsuario, nuevoExamen); this.Hide(); using (Ventana_Preguntas Vpreguntas = new Ventana_Preguntas(nuevoExamen)) Vpreguntas.ShowDialog(); this.Close(); } } }
private void cargarDificultad() //Le asigno al combobox dificultad el array dificultades { if (conjuntoSeleccionado == null) { } else { dificultades = ControladorPreguntas.GetDificultades(conjuntoSeleccionado); foreach (DificultadDTO dific in dificultades) { dificultad.Items.Add(dific.Id); } } }
private void cargarCategoria() { if (conjuntoSeleccionado == null) { } else { categorias = ControladorPreguntas.GetCategoriasConMasDeNPreguntas(conjuntoSeleccionado, 10); foreach (CategoriaPreguntaDTO categ in categorias) { categoria.Items.Add(categ.Id); } } }
private void conjunto_SelectedIndexChanged(object sender, EventArgs e) { string nombreConjuto = this.conjunto.SelectedItem.ToString(); var categorias = ControladorPreguntas.GetCategoriasConMasDeNPreguntas(nombreConjuto, 0); var dificultades = ControladorPreguntas.GetDificultades(nombreConjuto); foreach (var c in categorias) { categoria.Items.Add(c.Id); } foreach (var d in dificultades) { dificultad.Items.Add(d.Id); } }
private void cargarPreguntas_Click(object sender, EventArgs e) { if ((categoria.SelectedItem == null) || (dificultad.SelectedItem == null) || (conjunto.SelectedItem == null) || (cantidad.Value == null)) { MessageBox.Show("Debe completar todos "); } else { string categoriaSeleccionada = categoria.SelectedItem.ToString(); //Asigno el valor ingresado a clase Categoria string dificultadSeleccionada = dificultad.SelectedItem.ToString(); //Asigno el valor ingresado a clase Dificultad string conjuntoSeleccionado = conjunto.SelectedItem.ToString(); //Asigno el valor ingresado a clase Dificultad string cantidadSeleccionada = cantidad.Value.ToString(); int cargadas = ControladorPreguntas.GetPreguntasOnline(cantidadSeleccionada, conjuntoSeleccionado, categoriaSeleccionada, dificultadSeleccionada); MessageBox.Show($"Se cargaron exitosamente {cargadas} preguntas"); } }
public void GetEstrategia_EstrategiaVacia_DevuelveEstrategiaNula() { var estrategia = ControladorPreguntas.GetEstrategia(""); Assert.IsInstanceOfType(estrategia, typeof(EstrategiaNula)); }