code: def test_round_trip_vcf(self, test_datum_name):
      # Round-trip variants through writing and reading:
      # 1. Read variants v1 from VcfReader;
      # 2. Write v1 to vcf using our VcfWriter;
      # 3. Read back in using VcfReader -- v2;
      # 4. compare v1 and v2.
      in_file = test_utils.genomics_core_testdata(test_datum_name)
      out_file = test_utils.test_tmpfile("output_" + test_datum_name)
  
      v1_reader = vcf.VcfReader(in_file)
      v1_records = list(v1_reader.iterate())
      self.assertTrue(v1_records, "Reader failed to find records")
  
      header = copy.deepcopy(v1_reader.header)
      writer_options = variants_pb2.VcfWriterOptions()
  
      with vcf_writer.VcfWriter.to_file(
          out_file, header, writer_options
      ) as writer:
          for record in v1_records:
              writer.write(record)
  
      v2_reader = vcf.VcfReader(out_file)
      v2_records = list(v2_reader.iterate())
  
      self.assertEqual(
          v1_records,
          v2_records,
          "Round-tripped variants not as expected",
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import copy
  from absl.testing import absltest
  from absl.testing import parameterized
  from etils import epath
  from third_party.nucleus.io import tfrecord
  from third_party.nucleus.io import vcf
  from third_party.nucleus.io.python import vcf_writer
  from third_party.nucleus.protos import reference_pb2
  from third_party.nucleus.protos import variants_pb2
  from third_party.nucleus.testing import test_utils
label_desc: Use image node_id 1 for calling the WrapVcfWriterRoundTripTests obj's underlying member method code with example usage: obj.test_round_trip_vcf(test_datum_name) without return types