code: def test_plot_sympify():
      x, y = symbols("x, y")
  
      # argument is already sympified
      args = x + y
      r = _plot_sympify(args)
      assert r == args
  
      # one argument needs to be sympified
      args = (x + y, 1)
      r = _plot_sympify(args)
      assert isinstance(r, (list, tuple, Tuple)) and len(r) == 2
      assert isinstance(r[0], Expr)
      assert isinstance(r[1], Integer)
  
      # string and dict should not be sympified
      args = (x + y, (x, 0, 1), "str", 1, {1: 1, 2: 2.0})
      r = _plot_sympify(args)
      assert isinstance(r, (list, tuple, Tuple)) and len(r) == 5
      assert isinstance(r[0], Expr)
      assert isinstance(r[1], Tuple)
      assert isinstance(r[2], str)
      assert isinstance(r[3], Integer)
      assert (
          isinstance(r[4], dict)
          and isinstance(r[4][1], int)
          and isinstance(r[4][2], float)
      )
  
      # nested arguments containing strings
      args = ((x + y, (y, 0, 1), "a"), (x + 1, (x, 0, 1), "$f_{1}$"))
      r = _plot_sympify(args)
      assert isinstance(r, (list, tuple, Tuple)) and len(r) == 2
      assert isinstance(r[0], Tuple)
      assert isinstance(r[0][1], Tuple)
      assert isinstance(r[0][1][1], Integer)
      assert isinstance(r[0][2], str)
      assert isinstance(r[1], Tuple)
      assert isinstance(r[1][1], Tuple)
      assert isinstance(r[1][1][1], Integer)
      assert isinstance(r[1][2], str)
  
      # vectors from sympy.physics.vectors module are not sympified
      # vectors from sympy.vectors are sympified
      # in both cases, no error should be raised
      R = ReferenceFrame("R")
      v1 = 2 * R.x + R.y
      C = CoordSys3D("C")
      v2 = 2 * C.i + C.j
      args = (v1, v2)
      r = _plot_sympify(args)
      assert isinstance(r, (list, tuple, Tuple)) and len(r) == 2
      assert isinstance(v1, MechVector)
      assert isinstance(v2, Vector)
  
file_path: sympy/sympy/plotting/tests/test_utils.py
imports: from pytest import raises
  from sympy import symbols, Expr, Tuple, Integer, cos, solveset, FiniteSet, ImageSet
  from sympy.plotting.utils import _create_ranges, _plot_sympify, extract_solution
  from sympy.physics.mechanics import ReferenceFrame, Vector
  from sympy.vector import CoordSys3D, Vector
label_desc: Use image node_id 1 for calling a global function with example usage: test_plot_sympify() without return types