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)
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')
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)
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')
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')
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)