code: def testNonInvertibleLUAssertStatic(self):
      lower_upper, permutation = self.evaluate(
          tf.linalg.lu([[1.0, 2, 3], [4, 5, 6], [0.5, 0.0, 0.25]])
      )
      np.fill_diagonal(lower_upper, 0.0)
      with self.assertRaisesOpError(
          "`lower_upper` must have nonzero diagonal"
      ):
          bijector = scale_matvec_lu.ScaleMatvecLU(
              lower_upper=lower_upper,
              permutation=permutation,
              validate_args=True,
          )
          self.evaluate(bijector.forward([1.0, 2, 3]))
  
file_path: probability/tensorflow_probability/python/bijectors/scale_matvec_lu_test.py
imports: import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import bijector_test_util
  from tensorflow_probability.python.bijectors import scale_matvec_lu
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 5 for calling the ScaleMatvecLUTest obj's underlying member method code with example usage: obj.testNonInvertibleLUAssertStatic() without return types