code: def test_XXM_vstack(DM):
      A = DM([[1, 2, 3], [4, 5, 6]])
      B = DM([[7, 8, 9]])
      C = DM([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
      ABC = DM(
          [
              [1, 2, 3],
              [4, 5, 6],
              [7, 8, 9],
              [1, 2, 3],
              [4, 5, 6],
              [7, 8, 9],
          ]
      )
      assert A.vstack(B) == C
      assert A.vstack(B, C) == ABC
  
imports: from sympy.external.gmpy import GROUND_TYPES
  from sympy import ZZ, QQ, GF, ZZ_I, symbols
  from sympy.polys.matrices.exceptions import DMBadInputError, DMDomainError, DMNonSquareMatrixError, DMNonInvertibleMatrixError, DMShapeError
  from sympy.polys.matrices.domainmatrix import DM, DomainMatrix, DDM, SDM, DFM
  from sympy.testing.pytest import raises, skip
  import pytest
label_desc: Use image node_id 45 for calling a global function with example usage: test_XXM_vstack(DM) without return types