public void GenomeIOTest()
        {
            var gmdt1        = new GenomeMetadata();
            var createdFile  = Path.Combine(TestPaths.LocalScratchDirectory, "TestSavingGenome.xml");
            var originalFile = Path.Combine(TestPaths.LocalScratchDirectory, "GenomeXml2.xml");

            if (File.Exists(createdFile))
            {
                File.Delete(createdFile);
            }

            if (File.Exists(originalFile))
            {
                File.Delete(originalFile);
            }

            File.Copy(_genomeXML, originalFile);


            gmdt1.Deserialize(originalFile);
            TestGenomeMetadata(gmdt1);

            gmdt1.Serialize(createdFile);

            var gmdt2 = new GenomeMetadata();

            gmdt2.Deserialize(createdFile);

            TestGenomeMetadata(gmdt2);
        }
Ejemplo n.º 2
0
        protected override void ProgramExecution()
        {
            GenomeMetadata.CheckReferenceGenomeFolderState(_options.InputFastaFolder, false, false);

            Console.WriteLine("Preparing GenomeSize.xml for folder {0}...", _options.OutputDirectory);
            GenomeMetadata metadata = new GenomeMetadata();

            metadata.ImportFromFastaFiles(_options.InputFastaFolder, _options.OutputDirectory);
            metadata.Name = _options.SpeciesName;
            string genomeSizePath = Path.Combine(_options.OutputDirectory, "GenomeSize.xml");

            if (File.Exists(genomeSizePath))
            {
                throw new ArgumentException("GenomeSize.xml already exists on " + _options.OutputDirectory);
            }

            metadata.Serialize(genomeSizePath);
            Console.WriteLine("GenomeSize.xml prepared at {0}", genomeSizePath);
        }
Ejemplo n.º 3
0
        public void HappyPath()
        {
            Assert.Equal(GenomeMetadata.GenomeFolderState.Ready, GenomeMetadata.CheckReferenceGenomeFolderState(_genomeFolder, false, false));
            Assert.Equal(GenomeMetadata.GenomeFolderState.Ready, GenomeMetadata.CheckReferenceGenomeFolderState(_genomeFolder, true, false));
            Assert.Equal(GenomeMetadata.GenomeFolderState.RequireWritableFolder, GenomeMetadata.CheckReferenceGenomeFolderState(_genomeFolder, false, true));
            Assert.Equal(GenomeMetadata.GenomeFolderState.RequireWritableFolder, GenomeMetadata.CheckReferenceGenomeFolderState(_genomeFolder, true, true));

            var firstGmdt = new GenomeMetadata();

            firstGmdt.Deserialize(_genomeXML);
            TestGenomeMetadata(firstGmdt);

            firstGmdt.Serialize("temp.xml");

            var secondGmdt = new GenomeMetadata();

            secondGmdt.Deserialize("temp.xml");

            TestGenomeMetadata(secondGmdt);
        }
Ejemplo n.º 4
0
        public void SequenceMetaDataTest()
        {
            var testFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "SequenceMetaDataTest.fa");

            var gmdt = new GenomeMetadata();

            gmdt.Deserialize(_genomeXML);
            TestGenomeMetadata(gmdt);

            gmdt.Serialize(testFile);

            var seq1 = gmdt.Sequences[0];

            Assert.True(seq1.CompareTo(seq1) == 0);

            Assert.False(seq1.IsMito());

            Assert.False(seq1.IsDecoyOrOther());

            Assert.True(seq1.IsAutosome());

            File.Delete(testFile);
        }