/// <summary> /// Private constructor for clone method. /// </summary> /// <param name="other">Other RibosomeBindingSite instance.</param> private RibosomeBindingSite(RibosomeBindingSite other) : base(other) { }
/// <summary> /// Validate GenBank RibosomeBindingSite features /// </summary> /// <param name="nodeName">XML node name</param> /// <param name="genMetadata">GenBank Metadata</param> private void ValidateGenBankRibosomeBindingSite(string nodeName, GenBankMetadata genMetadata) { // Get Values from XML node. string expectedLocation = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.Location); string expectedAllele = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.AlleleNode); string featureCount = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.QualifierCount); string expectedDbReference = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.DbReferenceNode); string geneSymbol = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.GeneSymbol); string expectedCitation = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.CitationNode); string expectedExperiment = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.ExperimentNode); string expectedInference = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.InferenceNode); string expectedLabel = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.LabelNode); string expectedNote = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.Note); string expectedMap = utilityObj.xmlUtil.GetTextValue( nodeName, Constants.GenbankMapNode); List<RibosomeBindingSite> ribosomeSite = genMetadata.Features.RibosomeBindingSites; // Create a copy of RibosomeBindigSite Region feature. RibosomeBindingSite cloneRibosomeSite = ribosomeSite[0].Clone(); var locBuilder = new LocationBuilder(); // Validate RibosomeBindigSite qualifiers. Assert.AreEqual(ribosomeSite.Count.ToString((IFormatProvider) null) , featureCount); Assert.AreEqual(cloneRibosomeSite.DatabaseCrossReference[0], expectedDbReference); Assert.AreEqual(cloneRibosomeSite.GeneSymbol, geneSymbol); Assert.AreEqual(ribosomeSite[0].Allele, expectedAllele); Assert.AreEqual(ribosomeSite[0].Citation[0], expectedCitation); Assert.AreEqual(ribosomeSite[0].Experiment[0], expectedExperiment); Assert.AreEqual(ribosomeSite[0].Inference[0], expectedInference); Assert.AreEqual(ribosomeSite[0].Label, expectedLabel); Assert.AreEqual(locBuilder.GetLocationString( genMetadata.Features.RibosomeBindingSites[0].Location), expectedLocation); Assert.AreEqual(ribosomeSite[0].Note[0], expectedNote); Assert.AreEqual(ribosomeSite[0].GenomicMapPosition, expectedMap); Assert.IsNotNull(ribosomeSite[0].OldLocusTag[0]); Assert.IsNotNull(ribosomeSite[0].LocusTag[0]); Assert.IsNotNull(ribosomeSite[0].StandardName); // Create a new RibosomeBindingSite feature using constructor. var ribosomeBindingSite = new RibosomeBindingSite(expectedLocation); var ribosomeBindingSiteLoc = new RibosomeBindingSite( genMetadata.Features.RibosomeBindingSites[0].Location); // Set and validate qualifiers. ribosomeBindingSite.Allele = expectedAllele; ribosomeBindingSiteLoc.GeneSymbol = geneSymbol; ribosomeBindingSiteLoc.GenomicMapPosition = expectedMap; Assert.AreEqual(ribosomeBindingSiteLoc.GenomicMapPosition, expectedMap); Assert.AreEqual(ribosomeBindingSite.Allele, expectedAllele); Assert.AreEqual(ribosomeBindingSiteLoc.GeneSymbol, geneSymbol); }