def __init__(self, logger=RealLogger()):
     self.logger = logger
     self.matrix1 = MatrixOperations.make_from_list([[0] * 3] * 3)
     self.matrix2 = MatrixOperations.make_from_list([[0] * 3] * 3)
     self.rows = 3
     self.answer = ''
     self.operation = '+'
     self.logger.log('Welcome!')
Пример #2
0
 def test_plus_onesize_diff_char_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 1]])
     second_matrix = Matrix.make_from_list([[-1, -1]])
     result_matrix = MatrixOperations.add_matrix(first_matrix,
                                                 second_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 0
                     and result_matrix.data_lines[0][1] == 0)
Пример #3
0
 def test_scalar_2_mult_square_2x2_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 2], [3, 4]])
     skalar = 2
     result_matrix = MatrixOperations.scalar_multiply_matrix(
         skalar, first_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 2
                     and result_matrix.data_lines[1][1] == 8)
Пример #4
0
 def test_scalar_1_mult_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 2], [3, 4]])
     scalar = 1
     result_matrix = MatrixOperations.scalar_multiply_matrix(
         scalar, first_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 1
                     and result_matrix.data_lines[1][1] == 4)
Пример #5
0
 def test_inverse_2x2_matrix(self):
     matrix = Matrix.make_from_list([[1, 2], [3, 4]])
     result_matrix = MatrixOperations.inverse(matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == -2
                     and result_matrix.data_lines[0][1] == 1
                     and result_matrix.data_lines[1][0] == 1.5
                     and result_matrix.data_lines[1][1] == -0.5)
Пример #6
0
 def test_plus_onesize_negative_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 1]])
     second_matrix = Matrix.make_from_list([[-2, 2]])
     result_matrix = MatrixOperations.add_matrix(first_matrix,
                                                 second_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == -1
                     and result_matrix.data_lines[0][1] == 3)
Пример #7
0
 def test_mult_square_2x2_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 0], [0, 1]])
     second_matrix = Matrix.make_from_list([[3, 3], [3, 3]])
     result_matrix = MatrixOperations.multiply_matrix(
         first_matrix, second_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 3
                     and result_matrix.data_lines[1][1] == 3)
Пример #8
0
 def test_plus_3x2_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 1], [2, 2], [3, 3]])
     second_matrix = Matrix.make_from_list([[-1, -1], [-1, -1], [-1, -1]])
     result_matrix = MatrixOperations.add_matrix(first_matrix,
                                                 second_matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 0
                     and result_matrix.data_lines[1][1] == 1
                     and result_matrix.data_lines[2][1] == 2)
Пример #9
0
 def test_inverse_invalid_size_matrix(self):
     matrix = Matrix.make_from_list([[1, 2, 2], [3, 4, 4]])
     with self.assertRaises(MatrixError):
         MatrixOperations.inverse(matrix)
Пример #10
0
 def test_transpose_1x3_matrix(self):
     matrix = Matrix.make_from_list([[1, 2, 3]])
     result_matrix = MatrixOperations.transpose(matrix)
     self.assertTrue(result_matrix.data_lines[0][0] == 1
                     and result_matrix.data_lines[1][0] == 2
                     and result_matrix.data_lines[2][0] == 3)
Пример #11
0
 def test_transpose_3x2_matrix(self):
     matrix = Matrix.make_from_list([[1, 2], [3, 4], [5, 6]])
     result_matrix = MatrixOperations.transpose(matrix)
     self.assertTrue(result_matrix.data_lines[0][1] == 3
                     and result_matrix.data_lines[1][0] == 2
                     and result_matrix.data_lines[0][2] == 5)
 def calculate_determinant2(self):
     return MatrixOperations.calculate_det(self.matrix2)
 def sum(self):
     return MatrixOperations.add_matrix(self.matrix1,
                                        self.matrix2).get_data_lines()
 def mul(self):
     return MatrixOperations.multiply_matrix(self.matrix1,
                                             self.matrix2).get_data_lines()
 def update_matrix1_content(self, content):
     self.matrix1 = MatrixOperations.make_from_list(content)
     self.logger.log('Setting first matrix to %s' % self.matrix1.data_lines)
 def inverse2(self):
     return MatrixOperations.inverse(self.matrix2).get_data_lines()
 def transpose2(self):
     return MatrixOperations.transpose(self.matrix2).get_data_lines()
Пример #18
0
 def test_inverse_matrix_with_zero_det(self):
     matrix = Matrix.make_from_list([[1, 2], [2, 4]])
     with self.assertRaises(MatrixError):
         MatrixOperations.inverse(matrix)
Пример #19
0
 def test_plus_diffsize_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 1]])
     second_matrix = Matrix.make_from_list([[-1]])
     with self.assertRaises(MatrixOperationsError):
         MatrixOperations.add_matrix(first_matrix, second_matrix)
Пример #20
0
 def test_not_onesize_matrices(self):
     first_matrix = Matrix.make_from_list([[1, 1]])
     second_matrix = Matrix.make_from_list([[2]])
     self.assertEqual(
         MatrixOperations.is_both_same_size(first_matrix, second_matrix),
         False)
 def __init__(self):
     self.matrix1 = MatrixOperations.make_from_list([[0]*3]*3)
     self.matrix2 = MatrixOperations.make_from_list([[0]*3]*3)
     self.rows = 3
     self.answer = ''
     self.operation = '+'
Пример #22
0
 def test_mult_invalid_size_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 0], [0, 1], [1, 1]])
     second_matrix = Matrix.make_from_list([[3, 3], [3, 3], [3, 3]])
     with self.assertRaises(MatrixOperationsError):
         MatrixOperations.multiply_matrix(first_matrix, second_matrix)
 def update_matrix2_content(self, content):
     self.matrix2 = MatrixOperations.make_from_list(content)
     self.logger.log('Setting second matrix to %s' %
                     self.matrix2.data_lines)
Пример #24
0
 def test_can_create_matrix(self):
     test_matrix = MatrixOperations(2, 2)
     test_matrix.data_lines = [[1, 1], [0, 1]]
     self.assertTrue(test_matrix.data_lines[0][1] == 1
                     and test_matrix.cols == 2)
Пример #25
0
 def test_scalar_0_mult_matrix(self):
     first_matrix = Matrix.make_from_list([[1, 2], [3, 4]])
     scalar = 0
     result_matrix = MatrixOperations.scalar_multiply_matrix(
         scalar, first_matrix)
     self.assertEqual(result_matrix, 0)
Пример #26
0
 def test_can_not_multiply_matrices(self):
     first_matrix = Matrix.make_from_list([[1, 1], [1, 1]])
     second_matrix = Matrix.make_from_list([[2, 2]])
     self.assertEqual(
         MatrixOperations.can_multiply_matrix(first_matrix, second_matrix),
         False)
 def update_matrix2_content(self, content):
     self.matrix2 = MatrixOperations.make_from_list(content)