class_docstr: Test the iteration functionality provided by io.SamReader.
code: def _parse_read_with_aux_tags(self, tag_string):
      # Minimal header line to create a valid SAM file.
      header_lines = (
          "@HD\tVN:1.3\tSO:coordinate\n@SQ\tSN:chr1\tLN:248956422\n"
      )
      # A single stock read we'll add our AUX fields to.
      read = (
          "read_name\t0\tchr1\t1\t0\t3M\t*\t0\t0\tCCC\tAAA\t"
          + tag_string
      )
      path = test_utils.test_tmpfile("aux_tags.bam")
      with epath.Path(path).open("w") as fout:
          fout.write(header_lines)
          fout.write(read + "\n")
      with sam.SamReader(path, parse_aux_fields=True) as reader:
          return list(reader.iterate())
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import itertools
  from absl.testing import absltest
  from absl.testing import parameterized
  import six
  from etils import epath
  from third_party.nucleus.io import sam
  from third_party.nucleus.io import tfrecord
  from third_party.nucleus.protos import reads_pb2
  from third_party.nucleus.protos import reference_pb2
  from third_party.nucleus.testing import test_utils
  from third_party.nucleus.util import ranges
label_desc: Use image node_id 8 for calling the SamReaderTests obj's underlying member method code with example usage: obj._parse_read_with_aux_tags(tag_string) and returns: list