Example #1
0
        public void MultiScvPubmed()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 15589551, "AG");

            //extracting from SCV record
            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000194003.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                Assert.Equal(clinVarItem.PubmedIds, new List <long> {
                    25741868, 26092869
                });
            }
        }
Example #2
0
        public void PubmedTest7_comma_trimming()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 41258568, "A");

            //extracting from SCV record
            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000167792.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                Assert.Equal(clinVarItem.PubmedIds, new List <long> {
                    23239986, 28492532, 30472649
                });
            }
        }
Example #3
0
        public void PubmedTest6()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 118165691, "C");

            //extracting from SCV record
            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000120902.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                Assert.Equal(clinVarItem.PubmedIds, new List <long> {
                    24728327
                });
            }
        }
        public void MultiplePhenotypes()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 172659738, "C");

            //no citations show up for this RCV in the website. But the XML has these pubmed ids under fields that we parse pubmed ids from
            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000144179.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                var expectedPhenotypes = new List <string> {
                    "Single ventricle", "small Atrial septal defect"
                };
                Assert.Equal(expectedPhenotypes, clinVarItem.Phenotypes);
            }
        }
        public void IupacBases()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh38, 32339320, "C");

            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000113363.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            var altAlleles = new List <string>();

            foreach (var clinVarItem in items)
            {
                altAlleles.Add(clinVarItem.AltAllele);
                Assert.Equal(new[] { "pathogenic" }, clinVarItem.Significances);
            }

            Assert.Equal(2, altAlleles.Count);
        }
        public void MultipleAlleleOrigins()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 32890572, "G");

            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000112977.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                Assert.Equal(2, clinVarItem.AlleleOrigins.Count());
                Assert.NotEqual(clinVarItem.AlleleOrigins.First(), clinVarItem.AlleleOrigins.Last());

                foreach (var origin in clinVarItem.AlleleOrigins)
                {
                    Assert.True(origin == "unknown" || origin == "germline");
                }
            }
        }
        public void SkipGeneralCitations()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 67705958, "G");
            //no citations show up for this RCV in the website. But the XML has these pubmed ids under fields that we parse pubmed ids from
            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000003254.xml")), Stream.Null, sequenceProvider);

            foreach (var clinVarItem in reader.GetRcvItems())
            {
                Assert.Equal(clinVarItem.PubmedIds, new List <long>
                {
                    12023369,
                    17068223,
                    17447842,
                    17587057,
                    17786191,
                    17804789,
                    18438406,
                    19122664,
                    20228799
                });
            }
        }
        public void WrongPosition()
        {
            var sequenceProvider = GetSequenceProvider(GenomeAssembly.GRCh37, 112064826, "G");

            var reader = new ClinVarReader(FileUtilities.GetReadStream(Resources.ClinvarXmlFiles("RCV000073701.xml")), Stream.Null, sequenceProvider);

            var items = reader.GetRcvItems();

            Assert.True(items.Any());

            foreach (var clinVarItem in items)
            {
                switch (clinVarItem.Position)
                {
                case 112064826:
                    Assert.Equal("G", clinVarItem.RefAllele);
                    Assert.Equal("C", clinVarItem.AltAllele);
                    break;

                default:
                    throw new InvalidDataException($"Unexpected clinvar item start point : {clinVarItem.Position}");
                }
            }
        }