def test_caso_Productro_Matrices_I_PMinima(self):
     self.assertEqual(
         [[(-33, 153), (120, 0),
           (-44, -22)], [(87, 0), (-26, -117),
                         (107, 70)], [(0, 165), (147, 26), (69, -36)]],
         Laboratorio2.productoMatricesImaginarias(
             [[(-6, 2), (0, 6),
               (7, 2)], [(6, 9), (7, 7), (-6, -6)], [(5, 8), (-6, 8),
                                                     (6, 9)]],
             [[(9, -6), (-3, -4),
               (5, -2)], [(3, 6), (-1, -5),
                          (0, -5)], [(9, 9), (8, -4), (-8, -4)]]))
 def test_caso_ProductoTensor_PMinima(self):
     m = [[(1, 1), (0, 0)], [(1, 0), (0, 1)]]
     m1 = [[(-1, 2), (-2, -2), (0, 2)], [(2, 3), (3, 1), (2, 2)],
           [(-2, 1), (1, -1), (2, 1)]]
     self.assertEqual(
         [[(-3, 1), (0, -4), (-2, 2), (0, 0), (0, 0),
           (0, 0)], [(-1, 5), (2, 4), (0, 4), (0, 0), (0, 0), (0, 0)],
          [(-3, -1), (2, 0), (1, 3), (0, 0), (0, 0),
           (0, 0)], [(-1, 2), (-2, -2), (0, 2), (-2, -1), (2, -2), (-2, 0)],
          [(2, 3), (3, 1), (2, 2), (-3, 2), (-1, 3),
           (-2, 2)], [(-2, 1), (1, -1), (2, 1), (-1, -2), (1, 1), (-1, 2)]],
         Laboratorio2.productoTensorialImaginario(m, m1))
 def test_caso_ProductoTensor(self):
     m = [[(1, 0), (2, 0)], [(3, 0), (4, 0)]]
     m1 = [[(1, 0), (2, 0), (3, 0)], [(1, 0), (2, 0), (3, 0)],
           [(1, 0), (2, 0), (3, 0)]]
     self.assertEqual(
         [[(1, 0), (2, 0), (3, 0), (2, 0), (4, 0),
           (6, 0)], [(1, 0), (2, 0), (3, 0), (2, 0), (4, 0), (6, 0)],
          [(1, 0), (2, 0), (3, 0), (2, 0), (4, 0),
           (6, 0)], [(3, 0), (6, 0), (9, 0), (4, 0), (8, 0),
                     (12, 0)],
          [(3, 0), (6, 0), (9, 0), (4, 0), (8, 0),
           (12, 0)], [(3, 0), (6, 0), (9, 0), (4, 0), (8, 0), (12, 0)]],
         Laboratorio2.productoTensorialImaginario(m, m1))
 def test_caso_sumaMatriz_PMinima(self):
     self.assertEqual([[(-15, -5), (-10, -6),
                        (7, 3)], [(4, 17), (6, -7),
                                  (14, -10)], [(5, 5), (2, -1), (-2, -1)]],
                      Laboratorio2.adicionMatricesImaginarias(
                          [[(-8, -3), (-6, -4),
                            (0, -4)], [(-1, 8), (6, -10),
                                       (8, -5)], [(4, 0), (8, 5),
                                                  (-7, -9)]],
                          [[(-7, -2), (-4, -2),
                            (7, 7)], [(5, 9), (0, 3),
                                      (6, -5)], [(1, 5), (-6, -6),
                                                 (5, 8)]]))
 def test_caso_Producto_Escalar_Por_Vector_PMinima(self):
     self.assertEqual([(-3, -7), (2, 0), (7, 11)],
                      Laboratorio2.multiplicacionEscalarVector((-1, 1),
                                                               [(-2, 5),
                                                                (-1, -1),
                                                                (2, -9)]))
 def test_caso_Inversa_Vectores_I(self):
     self.assertEqual([(-1, -1), (-2, 3), (5, -2)],
                      Laboratorio2.inversaVectoresImaginarios([(1, 1),
                                                               (2, -3),
                                                               (-5, 2)]))
 def test_caso_Inversa_Vectores_PMinima(self):
     self.assertEqual([(5, -2), (-3, 0), (0, 1)],
                      Laboratorio2.inversaVectoresImaginarios([(-5, 2),
                                                               (3, 0),
                                                               (0, -1)]))
 def test_caso_Matriz_Conjugada_PMinima(self):
     self.assertEqual([[(-6, -1), (3, -8)], [(2, 6), (3, 0)]],
                      Laboratorio2.matrizConjugada([[(-6, 1), (3, 8)],
                                                    [(2, -6), (3, 0)]]))
 def test_caso_Inversa_Matriz_PMinima(self):
     self.assertEqual([[(-7, -3), (1, -7)], [(9, 4), (7, 9)]],
                      Laboratorio2.inversaMatrizImaginaria([[(7, 3),
                                                             (-1, 7)],
                                                            [(-9, -4),
                                                             (-7, -9)]]))
 def test_caso_Matriz_Hermitiana(self):
     self.assertEqual(
         True,
         Laboratorio2.matrizHermitiana([[(2, 0), (3, -1)], [(3, 1),
                                                            (-1, 0)]]))
 def test_caso_Matriz_Unitaria_PMinima1(self):
     self.assertEqual(
         False,
         Laboratorio2.matrizUnitaria([[(0, 1), (1, 0), (0, 0)],
                                      [(0, 0), (0, 1), (1, 0)],
                                      [(1, 0), (0, 0), (0, 1)]]))
 def test_caso_Norma_Vectores_Imaginarios_PMinima(self):
     self.assertEqual(
         10, Laboratorio2.normaVectorImaginario([(4, 5), (3, 1), (0, -7)]))
 def test_caso_Accion_Matriz_Vector(self):
     self.assertEqual([(9, -3), (-15, 0)],
                      Laboratorio2.accionMatrizSobreVector(
                          [(-3, 1),
                           (5, 0)], [[(2, 0), (3, -1)], [(3, 1), (-1, 0)]]))
 def test_caso_Matriz_Adjunta_PMinima(self):
     self.assertEqual([[(7, -7), (5, 0)], [(3, -8),
                                           (8, 6)], [(8, -4), (-10, 1)]],
                      Laboratorio2.matrizAdjunta([[(7, 7), (3, 8), (8, 4)],
                                                  [(5, 0), (8, -6),
                                                   (-10, -1)]]))
 def test_caso_Matriz_Adjunta(self):
     self.assertEqual([[(4, -5), (0, 0), (-1, 0)], [(1, 0), (6, 2),
                                                    (0, 1)]],
                      Laboratorio2.matrizAdjunta([[(4, 5), (1, 0)],
                                                  [(0, 0), (6, -2)],
                                                  [(-1, 0), (0, -1)]]))
 def test_caso_sumaMatriz_1(self):
     self.assertEqual([[(8, -4), (11, 0)], [(3, 7), (-9, -7)]],
                      Laboratorio2.adicionMatricesImaginarias(
                          [[[3, 2], [4, -2]], [[1, 2], [3, 2]]],
                          [[[5, -6], [7, 2]], [[2, 5], [-12, -9]]]))
 def test_caso_Matriz_Hermitiana_PMinima(self):
     self.assertEqual(
         True,
         Laboratorio2.matrizHermitiana([[(3, 0), (2, -1), (0, -3)],
                                        [(2, 1), (0, 0), (1, -1)],
                                        [(0, 3), (1, 1), (0, 0)]]))
 def test_caso_Matriz_Hermitiana_PMinima1(self):
     self.assertEqual(
         False,
         Laboratorio2.matrizHermitiana([[(1, 0), (3, -1)], [(3, 1),
                                                            (0, 1)]]))
 def test_caso_Complejo_por_Matriz(self):
     self.assertEqual([[(0, 13), (-4, 32)], [(22, 32), (28, 10)]],
                      Laboratorio2.complejoPorMatriz(
                          (-2, 3), [[(3, -2), (8, -4)], [(4, -10),
                                                         (-2, -8)]]))
 def test_caso_Matriz_Transpuesta(self):
     self.assertEqual([[(4, 5), (0, 0), (-1, 0)], [(1, 0), (6, -2),
                                                   (0, -1)]],
                      Laboratorio2.matrizTranspuesta([[(4, 5), (1, 0)],
                                                      [(0, 0), (6, -2)],
                                                      [(-1, 0), (0, -1)]]))