code: def test_copy(self):
      pgm = dict(
          logits=normal.Normal(0.0, 1.0),
          probs=bernoulli.Bernoulli(logits=0.5),
      )
      d = jdn.JointDistributionNamed(pgm, validate_args=True)
      d_copy = d.copy()
      self.assertEqual(d_copy.parameters["model"], pgm)
      self.assertEqual(d_copy.parameters["validate_args"], True)
      self.assertEqual(
          d_copy.parameters["name"], "JointDistributionNamed"
      )
  
imports: import collections
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import bijector_test_util
  from tensorflow_probability.python.bijectors import scale
  from tensorflow_probability.python.distributions import bernoulli
  from tensorflow_probability.python.distributions import beta
  from tensorflow_probability.python.distributions import exponential
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.distributions import half_normal
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import joint_distribution_named
  from tensorflow_probability.python.distributions import joint_distribution_sequential
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import lognormal
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import sample
  from tensorflow_probability.python.distributions import student_t
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 17 for calling the JointDistributionNamedTest obj's underlying member method code with example usage: obj.test_copy() without return types