class_docstr: Short test of this derived class -- most tests are for base class.
code: def testSampleStatsMatchDistributionStats(self):
      mvn = self._construct_mvn(
          loc_shape=(2, 3),
          diag_shape=(3, 2, 3),
          update_shape=(3, 1),
      )
      n = 1000
      samples = mvn.sample(n, seed=test_util.test_seed())
  
      samples_, mean, s_cov, cov = self.evaluate(
          [
              samples,
              mvn.mean(),
              sample_stats.covariance(samples, sample_axis=0),
              mvn.covariance(),
          ]
      )
  
      maxstddev = np.sqrt(np.max(cov))
  
      self.assertAllMeansClose(
          samples_, mean, axis=0, atol=5 * maxstddev / np.sqrt(n)
      )
      self.assertAllClose(
          s_cov, cov, atol=5 * maxstddev**2 / np.sqrt(n)
      )
  
imports: import numpy
  from tensorflow_probability.python.distributions import mvn_diag_plus_low_rank_covariance
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.stats import sample_stats
label_desc: Use image node_id 2 for calling the MultivariateNormalLowRankUpdateLinearOperatorCovarianceTest obj's underlying member method code with example usage: obj.testSampleStatsMatchDistributionStats() without return types