public void TestListaEquals()
        {
            Lista <Persona> lista1 = new Lista <Persona>(Factoria.CrearPersonas());
            Lista <Persona> lista2 = new Lista <Persona>(Factoria.CrearPersonas());
            Lista <Persona> lista3 = lista1;
            Lista <Persona> lista4 = new Lista <Persona>(lista2);

            lista4.RemoveLast();

            // Comprobamos que indica que 2 variables que apuntan a la misma referencia lista son iguales.
            Assert.IsTrue(lista1.Equals(lista3), "El método Equals() no indica que dos listas iguales lo sean.");

            // Comprobamos que indica que 2 listas iguales lo son.
            Assert.IsTrue(lista1.Equals(lista2), "El método Equals() no indica que dos listas iguales lo sean.");

            // Comprobamos que indica que listas distintas no son iguales
            Assert.IsFalse(lista1.Equals(null),
                           "El método Equals() indica que dos listas son iguales cuando se le pasa null.");
            Assert.IsFalse(lista1.Equals(new Lista <int>()),
                           "El método Equals() indica que dos listas son iguales cuando se le pasa una lista de otro tipo.");
            Assert.IsFalse(lista1.Equals(lista4),
                           "El método Equals() indica que dos listas son iguales cuando las listas tienen distinto tamaño.");
            lista2.Set(0, null);
            Assert.IsFalse(lista1.Equals(lista2),
                           "El método Equals() indica que dos listas son iguales cuando tienen el mismo tamaño pero elementos distintos.");

            lista1.Set(0, null);
            Assert.IsTrue(lista1.Equals(lista2),
                          "El método Equals() indica que dos listas son distintas cuando tienen los mismos elementos.");
        }
        public void TestListaSet()
        {
            lista = new Lista <int>(0, 1, 2);

            lista.Set(0, 9);
            Assert.AreEqual(3, lista.NumeroElementos,
                            "Hacer un Set() incrementa el número de elementos.");
            Assert.AreEqual("[9, 1, 2]", lista.ToString(),
                            "Hacer un Set() no modifica correctamente la lista.");

            lista.Set(1, 8);
            Assert.AreEqual(3, lista.NumeroElementos,
                            "Hacer un Set() incrementa el número de elementos.");
            Assert.AreEqual("[9, 8, 2]", lista.ToString(),
                            "Hacer un Set() no modifica correctamente la lista.");

            lista.Set(2, 7);
            Assert.AreEqual(3, lista.NumeroElementos,
                            "Hacer un Set() incrementa el número de elementos.");
            Assert.AreEqual("[9, 8, 7]", lista.ToString(),
                            "Hacer un Set() no modifica correctamente la lista.");
        }
 public void TestListaSetThrowsException03()
 {
     lista = new Lista <int>(1);
     lista.Set(1, 9);
 }
 public void TestListaSetThrowsException01()
 {
     lista = new Lista <int>();
     lista.Set(0, 9);
 }