code: def testInverseGaussianShape(self):
      loc = self.make_tensor([2.0] * 5)
      concentration = self.make_tensor([2.0] * 5)
      dist = inverse_gaussian.InverseGaussian(
          loc, concentration, validate_args=True
      )
  
      self.assertEqual(self.evaluate(dist.batch_shape_tensor()), (5,))
      if self.use_static_shape:
          self.assertEqual(dist.batch_shape, tf.TensorShape([5]))
      self.assertAllEqual(self.evaluate(dist.event_shape_tensor()), [])
      self.assertEqual(dist.event_shape, tf.TensorShape([]))
  
imports: import numpy
  from scipy import misc
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import inverse_gaussian
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 2 for calling the _InverseGaussianTest obj's underlying member method code with example usage: obj.testInverseGaussianShape() without return types