Ejemplo n.º 1
0
    def test_to_cigar_units(self, to_convert, expected):
        # We can convert the raw form.
        to_convert = list(to_convert)
        expected = list(expected)

        actual = cigar.to_cigar_units(to_convert)
        self.assertEqual(actual, expected)

        # We can also convert the string form by formatting actual.
        self.assertEqual(
            cigar.to_cigar_units(cigar.format_cigar_units(actual)), expected)
Ejemplo n.º 2
0
def make_read(bases,
              quals=None,
              cigar=None,
              mapq=50,
              chrom='chr1',
              start=1,
              name='read'):
  """Makes a third_party.nucleus.protos.Read for testing."""
  if quals and len(bases) != len(quals):
    raise ValueError('Incompatable bases and quals', bases, quals)
  read = reads_pb2.Read(
      fragment_name=name,
      proper_placement=True,
      read_number=1,
      number_reads=2,
      aligned_sequence=bases,
      aligned_quality=quals,
      alignment=reads_pb2.LinearAlignment(
          position=position_pb2.Position(reference_name=chrom, position=start),
          mapping_quality=mapq,
          cigar=_cigar.to_cigar_units(cigar) if cigar else []))
  return read
Ejemplo n.º 3
0
def make_read(bases,
              start,
              quals=None,
              cigar=None,
              mapq=50,
              chrom='chr1',
              name=None):
    """Makes a nucleus.genomics.v1.Read for testing."""
    if quals and len(bases) != len(quals):
        raise ValueError('Incompatable bases and quals', bases, quals)
    read = reads_pb2.Read(
        fragment_name=name if name else 'read_' + str(make_read.counter),
        proper_placement=True,
        read_number=1,
        number_reads=2,
        aligned_sequence=bases,
        aligned_quality=quals,
        alignment=reads_pb2.LinearAlignment(
            position=position_pb2.Position(reference_name=chrom,
                                           position=start),
            mapping_quality=mapq,
            cigar=_cigar.to_cigar_units(cigar) if cigar else []))
    make_read.counter += 1
    return read