code: def testJohnsonSUShape(self):
      skewness = tf.constant(1.0)
      tailweight = tf.constant(2.0)
      mu = tf.constant([-3.0] * 5)
      sigma = tf.constant(11.0)
      dist = johnson_su.JohnsonSU(
          skewness=skewness,
          tailweight=tailweight,
          loc=mu,
          scale=sigma,
          validate_args=True,
      )
  
      self.assertEqual(self.evaluate(dist.batch_shape_tensor()), [5])
      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 math
  import numpy
  from scipy import stats
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import johnson_su
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 26 for calling the JohnsonSUTest obj's underlying member method code with example usage: obj.testJohnsonSUShape() without return types