code: def test_fixed_shape_convert_variable():
      # These are equivalent types
      t1 = TensorType("float64", shape=(1, 1))
      t2 = TensorType("float64", shape=(1, 1))
  
      assert t1 == t2
      assert t1.shape == t2.shape
  
      t2_var = t2()
      res = t2.convert_variable(t2_var)
      assert res is t2_var
  
      res = t1.convert_variable(t2_var)
      assert res is t2_var
  
      t1_var = t1()
      res = t2.convert_variable(t1_var)
      assert res is t1_var
  
      t3 = TensorType("float64", shape=(None, 1))
      t3_var = t3()
      res = t2.convert_variable(t3_var)
      assert isinstance(res.owner.op, SpecifyShape)
  
      t3 = TensorType("float64", shape=(None, None))
      t4 = TensorType("float64", shape=(3, 2))
      t4_var = t4()
      assert t3.shape == (None, None)
      res = t3.convert_variable(t4_var)
      assert res.type == t4
      assert res.type.shape == (3, 2)
  
imports: import os.path
  from tempfile import mkdtemp
  import numpy
  import pytest
  import pytensor.tensor
  from pytensor.configdefaults import config
  from pytensor.tensor.shape import SpecifyShape
  from pytensor.tensor.type import TensorType, col, matrix, row, scalar, tensor, tensor3, tensor4, tensor5, tensor6, tensor7, vector
label_desc: Use image node_id 17 for calling a global function with example usage: test_fixed_shape_convert_variable() without return types