code: def setup_method(self):
      self.rng = np.random.default_rng(1682281250228846)
  
      self.a = np.array([[1, 2, 3], [1, 2, 3], [2, 5, 6]])
      self.ca = np.array([[1, 2, 3], [1, 2, 3], [2, 5j, 6]])
      # Those matrices are more robust to detect problems in permutation
      # matrices than the ones above
      self.b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
      self.cb = np.array([[1j, 2j, 3j], [4j, 5j, 6j], [7j, 8j, 9j]])
  
      # Reectangular matrices
      self.hrect = np.array(
          [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 12, 12]]
      )
      self.chrect = (
          np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 12, 12]]) * 1.0j
      )
  
      self.vrect = np.array(
          [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 12, 12]]
      )
      self.cvrect = 1.0j * np.array(
          [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 12, 12]]
      )
  
      # Medium sizes matrices
      self.med = self.rng.random((30, 40))
      self.cmed = self.rng.random((30, 40)) + 1.0j * self.rng.random(
          (30, 40)
      )
  
imports: import pytest
  from pytest import raises
  import numpy
  from scipy.linalg import lu, lu_factor, lu_solve, get_lapack_funcs, solve
  from numpy.testing import assert_allclose, assert_array_equal
label_desc: Use image node_id 1 for calling the TestLUFactor obj's underlying member method code with example usage: obj.setup_method() without return types