Пример #1
0
        public void OverlappingTranscripts()
        {
            var annotationSource = ResourceUtilities.GetAnnotationSource(Resources.CacheGRCh37("chr1_89500_911300_Ensembl84_pos"), null) as NirvanaAnnotationSource;

            annotationSource?.EnableReportAllSvOverlappingTranscripts();

            var annotatedVariant = DataUtilities.GetVariant(annotationSource,
                                                            "chr1\t900000\t.\tG\t<DEL>\t.\tPASS\tEND=911300;SVTYPE=DEL");

            Assert.NotNull(annotatedVariant);

            var overlappingTranscriptIds =
                JsonUtilities.GetOverlappingTranscriptIds(annotatedVariant.AnnotatedAlternateAlleles.First());

            var expectedTranscripts = new List <string>
            {
                "ENST00000338591",
                "ENST00000379410",
                "ENST00000379409",
                "ENST00000379407",
                "ENST00000480267",
                "ENST00000491024",
                "ENST00000433179",
                "ENST00000341290",
                "ENST00000479361"
            };

            Assert.True(expectedTranscripts.OrderBy(t => t).SequenceEqual(overlappingTranscriptIds.OrderBy(t => t)));
            Assert.Contains("{\"transcript\":\"ENST00000338591\",\"hgnc\":\"KLHL17\",\"isCanonical\":true,\"partialOverlap\":true}", annotatedVariant.ToString());
            Assert.Contains("{\"transcript\":\"ENST00000379409\",\"hgnc\":\"PLEKHN1\"}", annotatedVariant.ToString());
        }