code: def testSampleAndLogProbUnivariateShapes(self):
      gm = mixture_same_family.MixtureSameFamily(
          mixture_distribution=categorical.Categorical(
              probs=self._build_tensor([0.3, 0.7])
          ),
          components_distribution=normal.Normal(
              loc=self._build_tensor([-1.0, 1]),
              scale=self._build_tensor([0.1, 0.5]),
          ),
          validate_args=True,
      )
      x = gm.sample([4, 5], seed=test_util.test_seed())
      log_prob_x = gm.log_prob(x)
      self.assertAllEqual([4, 5], self._shape(x))
      self.assertAllEqual([4, 5], self._shape(log_prob_x))
  
imports: import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import bernoulli
  from tensorflow_probability.python.distributions import categorical
  from tensorflow_probability.python.distributions import dirichlet
  from tensorflow_probability.python.distributions import exponential
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import logistic
  from tensorflow_probability.python.distributions import mixture_same_family
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.internal import hypothesis_testlib
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 1 for calling the _MixtureSameFamilyTest obj's underlying member method code with example usage: obj.testSampleAndLogProbUnivariateShapes() without return types