code: def test_docproduct():
      assert DotProduct(A, B).doit() == 22
      assert DotProduct(A.T, B).doit() == 22
      assert DotProduct(A, B.T).doit() == 22
      assert DotProduct(A.T, B.T).doit() == 22
  
      raises(TypeError, lambda: DotProduct(1, A))
      raises(TypeError, lambda: DotProduct(A, 1))
      raises(TypeError, lambda: DotProduct(A, D))
      raises(TypeError, lambda: DotProduct(D, A))
  
      raises(TypeError, lambda: DotProduct(B, C).doit())
  
file_path: sympy/sympy/matrices/expressions/tests/test_dotproduct.py
imports: from sympy.core.expr import unchanged
  from sympy.core.mul import Mul
  from sympy.matrices import Matrix
  from sympy.matrices.expressions.matexpr import MatrixSymbol
  from sympy.matrices.expressions.dotproduct import DotProduct
  from sympy.testing.pytest import raises
label_desc: Use image node_id 1 for calling a global function with example usage: test_docproduct() without return types