コード例 #1
0
ファイル: ModificationLookupTests.cs プロジェクト: zrolfs/sdk
        private void SetupUniProt()
        {
            var parser = new UniProtPtmListParser();

            UniprotModification[] modifications = parser.Parse(File.ReadAllText(UniProtTests.GetPtmListPath())).ToArray();

            _uniProtMod312 = modifications.Single(x => x.Id == "PTM-0312");
            //_uniProtModLookup = UniProtModificationLookup.CreateFromModifications(new[] { _uniProtMod312 },
            //    _elementProvider);
            _uniProtModLookup = UniProtModificationLookup.CreateFromModifications(modifications,
                                                                                  _elementProvider);
        }
コード例 #2
0
ファイル: UniProtTests.cs プロジェクト: zrolfs/sdk
        public void BasicModificationFileParse()
        {
            var parser  = new UniProtPtmListParser();
            var entries = parser.Parse(File.ReadAllText(GetPtmListPath())).ToList();

            Assert.AreEqual(676, entries.Count);

            // Make sure we parse first and last
            var mod0   = entries[0];
            var mod675 = entries[675];

            Assert.AreEqual("(2-aminosuccinimidyl)acetic acid (Asn-Gly)", mod0.Name);
            Assert.AreEqual("S-linked (HexNAc...) cysteine", mod675.Name);

            // Confirm missing Resid, Unimod, and PSI-MOD mappings
            Assert.IsNull(mod675.Resid);
            Assert.IsNull(mod675.Unimod);
            Assert.IsNull(mod675.PsiMod);

            UniprotModification mod3 = entries[3];

            Assert.AreEqual("(3R)-3-hydroxyasparagine", mod3.Identifier);
            Assert.AreEqual("PTM-0369", mod3.Accession);
            Assert.AreEqual(UniprotFeatureType.ModifiedResidue, mod3.FeatureKey);
            Assert.AreEqual("Asparagine", mod3.Target);
            Assert.AreEqual("Amino acid side chain", mod3.AminoAcidPosition);
            Assert.AreEqual("Anywhere", mod3.PolypeptidePosition);
            Assert.AreEqual("O1", mod3.CorrectionFormula);
            Assert.AreEqual(15.994915, mod3.MonoisotopicMassDifference);
            Assert.AreEqual(16.00, mod3.AverageMassDifference);
            Assert.AreEqual("Intracellular localisation or Extracellular and lumenal localisation", mod3.CellularLocation);

            Assert.AreEqual(1, mod3.TaxonomicRanges.Count);
            Assert.AreEqual("Eukaryota; taxId:40674 (Mammalia)", mod3.TaxonomicRanges.Single());
            Assert.AreEqual(1, mod3.Keywords.Count);
            Assert.AreEqual("Hydroxylation", mod3.Keywords.Single());

            Assert.AreEqual("AA0026", mod3.Resid);
            Assert.AreEqual("MOD:00035", mod3.PsiMod);
            Assert.AreEqual("35", mod3.Unimod);
        }
コード例 #3
0
        public void Setup()
        {
            var unimodOboParser = new UnimodOboParser();

            UnimodModification[] modifications = unimodOboParser.Parse(UnimodTest.GetUnimodFilePath()).ToArray();

            NistElementParser nistParser = new NistElementParser();

            IElement[] elements = nistParser.ParseFile(Path.Combine(TestContext.CurrentContext.TestDirectory, "TestData", "elements.dat")).ToArray();
            _elementProvider = new InMemoryElementProvider(elements);

            _residueProvider = new IupacAminoAcidProvider(_elementProvider);
            var atomProvider = new UnimodHardCodedAtomProvider(_elementProvider);

            _lookup = new CompositeModificationLookup(new IProteoformModificationLookup[]
            {
                UnimodModificationLookup.CreateFromModifications(modifications, atomProvider),
                new FormulaLookup(_elementProvider),
                new MassLookup(),
                new BrnoModificationLookup(_elementProvider),
                new IgnoreKeyModificationLookup(ProFormaKey.Info),
            });

            ProFormaParser         proFormaParser         = new ProFormaParser();
            ProteoformGroupFactory proteoformGroupFactory = new ProteoformGroupFactory(_elementProvider, _residueProvider);

            var mapper = new RelayAccessionMapper(d =>
            {
                if (d == "B:ac")
                {
                    return(Tuple.Create(ProFormaEvidenceType.PsiMod, "MOD:00394")); // acetylated residue
                }
                return(Tuple.Create(ProFormaEvidenceType.None, d));
            });

            var parser  = new UniProtPtmListParser();
            var entries = parser.Parse(File.ReadAllText(UniProtTests.GetPtmListPath())).ToList();

            _chemicalProteoformHashGenerator = new ChemicalProteoformHashGenerator(proFormaParser, proteoformGroupFactory, _lookup, mapper);
        }