code: def test_signature_override():
      caller = _test_ccallback.test_call_simple
      func = _test_ccallback.test_get_plus1_capsule()
  
      llcallable = LowLevelCallable(func, signature="bad signature")
      assert_equal(llcallable.signature, "bad signature")
      assert_raises(ValueError, caller, llcallable, 3)
  
      llcallable = LowLevelCallable(
          func, signature="double (double, int *, void *)"
      )
      assert_equal(
          llcallable.signature, "double (double, int *, void *)"
      )
      assert_equal(caller(llcallable, 3), 4)
  
file_path: scipy/scipy/_lib/tests/test_ccallback.py
imports: from numpy.testing import assert_equal, assert_
  from pytest import raises
  import time
  import pytest
  import ctypes
  import threading
  from scipy._lib import _ccallback_c
  from scipy._lib import _test_ccallback
  from scipy._lib._ccallback import LowLevelCallable
label_desc: Use image node_id 7 for calling a global function with example usage: test_signature_override() without return types