code: def test_choose_signature(func, output, inputs, expected):
      wrapper = wrap_cython_function(func, output, inputs)
      assert wrapper.signature() == expected
  
file_path: pytensor/tests/link/numba/test_cython_support.py
imports: import numpy
  import pytest
  import scipy.special.cython_special
  from numba.types import float32, float64, int32, int64
  from pytensor.link.numba.dispatch.cython_support import Signature, wrap_cython_function
label_desc: Use image node_id 3 for calling a global function with example usage: test_choose_signature(func, output, inputs, expected) without return types