code: def test_DDM_copy():
      ddm1 = DDM([[QQ(1)], [QQ(2)]], (2, 1), QQ)
      ddm2 = ddm1.copy()
      assert (ddm1 == ddm2) is True
      ddm1[0][0] = QQ(-1)
      assert (ddm1 == ddm2) is False
      ddm2[0][0] = QQ(-1)
      assert (ddm1 == ddm2) is True
  
imports: from sympy.testing.pytest import raises
  from sympy.external.gmpy import GROUND_TYPES
  from sympy.polys import ZZ, QQ
  from sympy.polys.matrices.ddm import DDM
  from sympy.polys.matrices.exceptions import DMShapeError, DMNonInvertibleMatrixError, DMDomainError, DMBadInputError
label_desc: Use image node_id 9 for calling a global function with example usage: test_DDM_copy() without return types