code: def testWeibullSample(self):
      concentration = self.dtype(4.0)
      scale = self.dtype(1.0)
      n = int(100e3)
  
      dist = weibull.Weibull(
          concentration=self.make_input(concentration),
          scale=self.make_input(scale),
          validate_args=True,
      )
  
      samples = dist.sample(n, seed=test_util.test_seed())
      sample_values = self.evaluate(samples)
  
      low = self.dtype(0.0)
      high = self.dtype(np.inf)
  
      self.assertAllClose(
          stats.weibull_min.mean(c=concentration, scale=scale, loc=0),
          sample_values.mean(),
          rtol=0.01,
      )
  
      self.evaluate(
          st.assert_true_mean_equal_by_dkwm(
              samples,
              low=low,
              high=high,
              expected=dist.mean(),
              false_fail_rate=self.dtype(1e-6),
          )
      )
  
      self.assertAllClose(
          stats.weibull_min.var(c=concentration, scale=scale, loc=0),
          sample_values.var(),
          rtol=0.01,
      )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import weibull
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 11 for calling the _WeibullTest obj's underlying member method code with example usage: obj.testWeibullSample() without return types