コード例 #1
0
ファイル: test_aligners.py プロジェクト: hsnsa/pastaspark
    def _impl_test_aligner(self, name, fn):
        filename = data_source_path(fn)
        alignment = Alignment()
        alignment.read_filepath(filename, 'FASTA')

        aln = self.get_aligner('%s' % name)
        if aln is None:
            _LOG.warn("test%s skipped" % name)
            return
        a = aln.run(alignment,
                    tmp_dir_par=self.ts.top_level_temp,
                    delete_temps=True)

        reference_fn = data_source_path('%s.%s' % (name, fn))
        reference_aln = Alignment()
        reference_aln.read_filepath(reference_fn, 'FASTA')
        _LOG.debug('Checking results from %s against %s' %
                   (name, reference_fn))
        if reference_aln != a:
            i = 1
            while True:
                nrfn = reference_fn + '.' + str(i)
                if os.path.exists(nrfn):
                    reference_aln = Alignment()
                    reference_aln.read_filepath(nrfn, 'FASTA')
                    _LOG.debug('Checking results from %s against %s' %
                               (name, nrfn))
                    if reference_aln == a:
                        self.assertEquals(reference_aln, a)
                        return True
                    i += 1
                else:
                    self.assertEquals(reference_aln, a)
コード例 #2
0
 def testConcatenateAlignments(self):
     filename1 = data_source_path('small.fasta')
     filename2 = data_source_path('small.fasta')
     a = Alignment()
     b = Alignment()
     a.datatype = "DNA"
     b.datatype = "DNA"
     a.read_filepath(filename1, 'FASTA')
     b.read_filepath(filename2, 'FASTA')
コード例 #3
0
 def testMaxSequenceLength(self):
     a = Alignment()
     a['1'] = 'A--CG--T'
     a['2'] = 'AC----GT'
     a['3'] = 'A-C-G-T-'
     a['4'] = 'ACGT---T'
     self.assertEqual(a.max_sequence_length(), 5)
コード例 #4
0
 def setUp(self):
     self.ts = TempFS()
     self.ts.create_top_level_temp(prefix='treeEstimatorTest', parent=os.curdir)
     self.filename = data_source_path('mafft.anolis.fasta')
     self.alignment = Alignment()
     self.alignment.read_filepath(data_source_path('mafft.anolis.fasta'),
             'FASTA')
コード例 #5
0
ファイル: test_alignment.py プロジェクト: hsnsa/pastaspark
 def testAlignment(self):
     filename = data_source_path('small.fasta')
     alignment = Alignment()
     alignment.read_filepath(filename, 'FASTA')
     num_taxa = alignment.get_num_taxa()
     self.assertEqual(num_taxa, 32)
     alignment.write_filepath(filename+'.phy', 'PHYLIP')
     alignment.write_unaligned_fasta(filename+'.raw')
     alignment.sub_alignment( alignment.keys()[0:2] ).write_unaligned_fasta(filename+'.partial.raw')
コード例 #6
0
ファイル: test_merger.py プロジェクト: hsnsa/pastaspark
    def _impl_test_merger(self, name):
        filename = data_source_path('merger1.fasta')
        alignment1 = Alignment()
        alignment1.read_filepath(filename, 'FASTA')
        filename = data_source_path('merger2.fasta')
        alignment2 = Alignment()
        alignment2.read_filepath(filename, 'FASTA')

        aln = self.get_merger('%s merger' % name)
        if aln is None:
            _LOG.warn("test%s skipped" % name)
            return
        a = aln.run(alignment1,
                    alignment2,
                    tmp_dir_par=self.ts.top_level_temp,
                    delete_temps=True)

        reference_fn = data_source_path('merger_result.fasta')
        reference_aln = Alignment()
        reference_aln.read_filepath(reference_fn, 'FASTA')
        self.assertEquals(reference_aln, a)