Пример #1
0
        public void Test_AddListaCanciones()
        {
            List <Cancion> listaCanciones = new List <Cancion>()
            {
                new Cancion("La balada del diablo y la muerte", EGenero.Rock.ToString(), "06:31", 2477),
                new Cancion("The Age Of Love", EGenero.Rock.ToString(), "06:31", 2477),
                new Cancion("Horizon Original Mix", EGenero.Techno.ToString(), "06:31", 2477),
                new Cancion("Cold Heart Claptone Extended Mix", EGenero.Techno.ToString(), "06:31", 2477),
                new Cancion("My Humps Original Mix", EGenero.TechHouse.ToString(), "06:31", 2477),
            };

            foreach (Cancion c in listaCanciones)
            {
                MusicReports.EliminarCancion(c);
            }
            int cantidadCancionesEsperada = MusicReports.GetLista().Count + listaCanciones.Count;


            MusicReports.AddCanciones(listaCanciones);


            foreach (Cancion c in listaCanciones)
            {
                Cancion CancionAgregada = MusicReports.BuscarCancion(c.Nombre);
                Assert.AreEqual(c, CancionAgregada);
            }
            Assert.AreEqual(cantidadCancionesEsperada, MusicReports.GetLista().Count);
        }
Пример #2
0
        public void Test_AddCancion_01()
        {
            Cancion cancion           = new Cancion("Musica Ligera", EGenero.Rock.ToString(), "05:10", 120);
            int     cantidadCanciones = MusicReports.GetLista().Count;

            MusicReports.AddCancion(cancion);
            Cancion CancionAgregada = MusicReports.BuscarCancion("Musica Ligera");

            Assert.AreEqual(cancion, CancionAgregada);
            Assert.AreEqual(cantidadCanciones + 1, MusicReports.GetLista().Count);
        }
Пример #3
0
        /// <summary>
        /// Load del formulacio
        /// Crea el boton reproducir, setea la lista de canciones en el datagridview
        /// </summary>
        private void FrmGrid_Load(object sender, EventArgs e)
        {
            DataGridViewButtonColumn boton = new DataGridViewButtonColumn();

            boton.HeaderText  = "Play";
            boton.Text        = ">";
            boton.ToolTipText = "Suma Una reproduccion";
            boton.UseColumnTextForButtonValue = true;
            DgvCanciones.DataSource           = MusicReports.GetLista();
            DgvCanciones.Columns.Add(boton);
        }
Пример #4
0
        /// <summary>
        /// Busca la cancion seleccionada en el DataGridView
        /// </summary>
        /// <returns>Cancion</returns>
        private Cancion BuscarCancionDataGrid()
        {
            int indiceFila = DgvCanciones.CurrentRow.Index;

            if (indiceFila >= 0)
            {
                DataGridViewRow fila          = DgvCanciones.Rows[indiceFila];
                string          nombreCancion = fila.Cells["Nombre"].Value.ToString();
                return(MusicReports.BuscarCancion(nombreCancion));
            }
            return(null);
        }
Пример #5
0
        public void Test_AddCancion_02()
        {
            Cancion cancionAAgregar   = new Cancion("Revelde", EGenero.Rock.ToString(), "05:10", 120);
            int     cantidadCanciones = MusicReports.GetLista().Count;
            int     cantidadEsperada  = 1;

            MusicReports.AddCancion(cancionAAgregar);
            MusicReports.AddCancion(cancionAAgregar);
            List <Cancion> cancionesAgregadas = MusicReports.GetLista().FindAll(cancion => cancion.Equals(cancionAAgregar));

            Assert.AreEqual(cantidadEsperada, cancionesAgregadas.Count);
            Assert.AreEqual(cantidadCanciones + 1, MusicReports.GetLista().Count);
        }
Пример #6
0
        private void ActualizarDataGrid()
        {
            DataGridViewButtonColumn boton = new DataGridViewButtonColumn();

            boton.HeaderText  = "Play";
            boton.Name        = "Play";
            boton.Text        = ">";
            boton.ToolTipText = "Suma Una reproduccion";
            boton.UseColumnTextForButtonValue = true;
            DgvCanciones.DataSource           = MusicReports.GetLista();
            DgvCanciones.Columns.Add(boton);
            DgvCanciones.Columns["Nombre"].ReadOnly         = false;
            DgvCanciones.Columns["Genero"].ReadOnly         = false;
            DgvCanciones.Columns["Reproducciones"].ReadOnly = false;
            DgvCanciones.Columns["Tiempo"].ReadOnly         = false;
        }
Пример #7
0
 /// <summary>
 /// boton click del submenu importar, abre un modal para seleccionar un archivo a importar
 /// </summary>
 private void btnImportar_Click(object sender, EventArgs e)
 {
     if (activeForm != null)
     {
         activeForm.Close();
     }
     try
     {
         if (openFileDialog.ShowDialog() == DialogResult.OK)
         {
             MusicReports.ImportarCanciones(openFileDialog.FileName);
         }
     }
     catch (TipoInvalidoException Error)
     {
         MessageBox.Show($"{Error.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Пример #8
0
 /// <summary>
 /// Metodo Click Boton agregar Cancion
 /// </summary>
 private void btnAgregar_Click(object sender, EventArgs e)
 {
     try
     {
         //agrego la cancion a la lista de canciones de MusicReports
         MusicReports.AddCancion(new Cancion(txtNombre.Text, CbGenero.SelectedItem.ToString(), dtpTiempo.Text, int.Parse(NumReproducciones.Text)));
         //muestro mensaje de exito en la creacion y adicion de la cancion
         MessageBox.Show("La cancion se agrego con exito", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     //Controlo la excepcion en caso de no poder crear la cancion por algun dato no valido
     catch (CampoInvalidoException error)
     {
         //mensaje de error para el usuario por campos invalidos
         MessageBox.Show(error.Message, "Error en los Campos", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         //Limpio el formulario una vez finalizado el proceso
         ClearForm();
     }
 }
Пример #9
0
 /// <summary>
 /// Constructor, Inicializa las listas.
 /// </summary>
 public FrmReports()
 {
     InitializeComponent();
     listaCanciones = new List <Cancion>();
     listaCanciones = MusicReports.GetLista();
 }
Пример #10
0
        static void Main(string[] args)
        {
            // Nombre del alumno
            Console.Title = "Juan Manuel Chico";


            Cancion cancion1 = new Cancion("La balada del diablo y la muerte", EGenero.Rock.ToString(), "06:22", 2477);
            Cancion cancion2 = new Cancion("The Age Of Love", EGenero.Rock.ToString(), "06:65", 2477);
            Cancion cancion3 = new Cancion("The Age Of Love", EGenero.Rock.ToString(), "06:31", 2477);

            MusicReports.AddCancion(cancion1);
            MusicReports.AddCancion(cancion2);
            MusicReports.AddCancion(cancion3);

            Console.WriteLine(" \n\n-------------------------------- ");
            Console.WriteLine("Metodo Add Cancion");
            Console.WriteLine(" -------------------------------- \n\n");
            foreach (Cancion item in MusicReports.GetLista())
            {
                Console.WriteLine(item.ToString());
            }

            List <Cancion> listaCanciones = new List <Cancion>()
            {
                new Cancion("Horizon Original Mix", EGenero.Techno.ToString(), "06:11", 2477),
                new Cancion("Cold Heart Claptone Extended Mix", EGenero.Techno.ToString(), "06:54", 2477),
                new Cancion("My Humps Original Mix", EGenero.TechHouse.ToString(), "32:43", 2477),
                new Cancion("My Humps Original Mix", EGenero.TechHouse.ToString(), "12:21", 2477)
            };

            MusicReports.AddCanciones(listaCanciones);

            Console.WriteLine("\n\n--------------------------------");
            Console.WriteLine("Metodo de AddCanciones");
            Console.WriteLine("---------------------------------\n\n");
            foreach (Cancion item in MusicReports.GetLista())
            {
                Console.WriteLine(item.ToString());
            }

            List <Cancion> listaFiltrada = MusicReports.GetLista().FiltrarCanciones(false, true, false, 0, EGenero.Techno.ToString(), "00:00", "00:00");

            Console.WriteLine("\n\n--------------------------------");
            Console.WriteLine("Lista Filtrada");
            Console.WriteLine("--------------------------------\n\n");
            foreach (Cancion item in listaFiltrada)
            {
                Console.WriteLine(item.ToString());
            }
            SerializacionXML <List <Cancion> > .Escribir(listaFiltrada, "Test_Consola_ListaFiltradaXML");

            Console.WriteLine("Se exporto en el escritorio carpeta: Archivos-Serializacion, nombre: Test_Consola_ListaFiltradaXML");

            List <Cancion> listaFiltrada2 = MusicReports.GetLista().FiltrarCanciones(true, false, false, 2477, EGenero.Techno.ToString(), "00:00", "00:00");

            Console.WriteLine("\n\n--------------------------------");
            Console.WriteLine("Lista listaFiltrada2");
            Console.WriteLine("--------------------------------\n\n");
            foreach (Cancion item in listaFiltrada2)
            {
                Console.WriteLine(item.ToString());
            }
            SerializacionJSON <List <Cancion> > .Escribir(listaFiltrada2, "Test_Consola_ListaFiltradaJSON");

            Console.WriteLine("Se exporto en el escritorio carpeta: Archivos-Serializacion, nombre: Test_Consola_ListaFiltradaJSON");
        }
Пример #11
0
        /// <summary>
        /// Load del formulario
        /// carga los labels y barras del form de estadisticas con la informacion correspondiente
        /// </summary>
        private void FrmEstadisticas_Load(object sender, EventArgs e)
        {
            float aux = MusicReports.PorcentajePorGenero(EGenero.Agender.ToString());

            PbAgender.Value = (int)aux;
            lblAgender.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Agender, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.BassHouse.ToString());
            PbBassHouse.Value = (int)aux;
            lblBassHouse.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.BassHouse, aux);

            aux            = MusicReports.PorcentajePorGenero(EGenero.Cumbia.ToString());
            PbCumbia.Value = (int)aux;
            lblCumbia.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Cumbia, aux);

            aux           = MusicReports.PorcentajePorGenero(EGenero.Dance.ToString());
            PbDance.Value = (int)aux;
            lblDance.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Dance, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.Electronica.ToString());
            PbElectronica.Value = (int)aux;
            lblElectronica.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Electronica, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.MelodicHouse.ToString());
            PbMelodicHouse.Value = (int)aux;
            lblMelodicHouse.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.MelodicHouse, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.MelodicMix.ToString());
            PbMelodicMix.Value = (int)aux;
            lblMelodicMix.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.MelodicMix, aux);

            aux         = MusicReports.PorcentajePorGenero(EGenero.Pop.ToString());
            PbPop.Value = (int)aux;
            lblPop.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Pop, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.Reggaeton.ToString());
            PbReggaeton.Value = (int)aux;
            lblReggaeton.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Reggaeton, aux);

            aux          = MusicReports.PorcentajePorGenero(EGenero.Rock.ToString());
            PbRock.Value = (int)aux;
            lblRock.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Rock, aux);

            aux           = MusicReports.PorcentajePorGenero(EGenero.Salsa.ToString());
            PbSalsa.Value = (int)aux;
            lblSalsa.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Salsa, aux);

            aux = MusicReports.PorcentajePorGenero(EGenero.TechHouse.ToString());
            PbTechHouse.Value = (int)aux;
            lblTechHouse.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.TechHouse, aux);

            aux            = MusicReports.PorcentajePorGenero(EGenero.Techno.ToString());
            PbTechno.Value = (int)aux;
            lblTechno.Text = string.Format("{0:0.##}", aux) + " %";
            estadistica.Add(EGenero.Techno, aux);
        }
Пример #12
0
 private void HomeUI_Load(object sender, EventArgs e)
 {
     MusicReports.ActualizarListadoCanciones();
 }
Пример #13
0
 public void Initialize()
 {
     MusicReports.ActualizarListadoCanciones();
 }