code: def test_kronecker():
      np.random.seed(1)
      # Create random matrices
      [a, b, c] = [np.random.rand(3, 3 + i) for i in range(3)]
  
      custom = kronecker(a, b, c)  # Custom version
      nested = pt.slinalg.kron(a, pt.slinalg.kron(b, c))
      np.testing.assert_array_almost_equal(custom.eval(), nested.eval())
  
imports: import warnings
  import numpy
  import numpy.testing
  import pytensor
  import pytensor.tensor
  import pytest
  from pymc.math import LogDet, cartesian, expand_packed_triangular, invprobit, kron_dot, kron_solve_lower, kronecker, log1mexp, log1mexp_numpy, logdet, logdiffexp, logdiffexp_numpy, probit
  from pymc.pytensorf import floatX
  from tests.helpers import verify_grad
label_desc: Use image node_id 1 for calling a global function with example usage: test_kronecker() without return types