Example #1
0
        // make sure individual read cigars make sense against stitched cigar
        protected static void ValidateCigar(CigarAlignment stitchedCigar, CigarAlignment read1Cigar, CigarAlignment read2Cigar)
        {
            if (!stitchedCigar.IsSupported())
            {
                throw new Exception(String.Format("Unsupported cigar: {0}", stitchedCigar));
            }

            ValidateCigar(stitchedCigar, read1Cigar);
            ValidateCigar(stitchedCigar.GetReverse(), read2Cigar.GetReverse());
        }
        public void ValidateCigarAignment()
        {
            //valid cigar string
            Assert.True(new CigarAlignment("5M3D4M7I2S8M").IsSupported());
            //invalid cigar string
            var alignment = new CigarAlignment();

            alignment.Add(new CigarOp('M', 5));
            alignment.Add(new CigarOp('U', 7));
            alignment.Add(new CigarOp('I', 3));
            alignment.Add(new CigarOp('M', 7));
            Assert.False(alignment.IsSupported());
        }