def test_transpose_using_non_square_identity_matrix(self): mat = SparseMatrix.identity((7, 9)) expected = SparseMatrix.identity((9, 7)) result = mat.T self.assertEqual(result.shape, (9, 7)) self.assertEqual(result, expected)
def test_identity_with_multiple_vectors(self): expected = SparseMatrix.from_list([[1, 0, 0, 0, 0], [0, 1, 0, 0, 0], [0, 0, 1, 0, 0], [0, 0, 0, 1, 0]]) result = SparseMatrix.identity((4, 5)) self.assertEqual(result.shape, (4, 5)) self.assertEqual(result, expected)
def test_transpose_using_square_identity_matrix(self): mat = SparseMatrix.identity((5, 5)) expected = copy(mat) result = mat.T self.assertEqual(result.shape, (5, 5)) self.assertEqual(result, expected)
def test_identity_with_single_vector(self): expected = SparseMatrix.from_list([[1, 0, 0, 0, 0]]) result = SparseMatrix.identity((1, 5)) self.assertEqual(result.shape, (1, 5)) self.assertEqual(result, expected)