def test_take_named(self): """returns collections containing named seqs""" select = sample.take_named_seqs("a", "b") alns = [ make_aligned_seqs(data=[ ("a", "GCAAGCGTTTAT"), ("b", "GCTTTTGTCAAT"), ("c", "GC--GCGTTTAT"), ("d", "GCAAGCNNTTAT"), ]), make_aligned_seqs(data=[ ("a", "GGAAGCGTTTAT"), ("b", "GCTTTTGTCAAT"), ("c", "GC--GCGTTTAT"), ("d", "GCAAGCNNTTAT"), ]), ] got = [aln.to_dict() for aln in map(select, alns) if aln] expected = [ dict((("a", "GCAAGCGTTTAT"), ("b", "GCTTTTGTCAAT"))), dict((("a", "GGAAGCGTTTAT"), ("b", "GCTTTTGTCAAT"))), ] self.assertEqual(got, expected) # return False if a named seq absent aln = make_aligned_seqs(data=[("c", "GC--GCGTTTAT"), ("d", "GCAAGCNNTTAT")]) got = select(aln) self.assertFalse(got) self.assertTrue(type(got) == composable.NotCompleted) # using negate select = sample.take_named_seqs("c", negate=True) alns = [ make_aligned_seqs(data=[("a", "GCAAGCGTTTAT"), ("b", "GCTTTTGTCAAT")]), make_aligned_seqs(data=[ ("a", "GGAAGCGTTTAT"), ("b", "GCTTTTGTCAAT"), ("c", "GC--GCGTTTAT"), ]), ] got = [aln.to_dict() for aln in map(select, alns) if aln] expect = [ dict(d) for d in [ [("a", "GCAAGCGTTTAT"), ("b", "GCTTTTGTCAAT")], [("a", "GGAAGCGTTTAT"), ("b", "GCTTTTGTCAAT")], ] ] self.assertEqual(got, expect)
def _get_all_composables(tmp_dir_name): test_model1 = evo.model("HKY85") test_model2 = evo.model("GN") test_hyp = evo.hypothesis(test_model1, test_model2) test_num_reps = 100 applications = [ align.align_to_ref(), align.progressive_align(model="GY94"), evo.ancestral_states(), evo.bootstrap(hyp=test_hyp, num_reps=test_num_reps), evo.hypothesis(test_model1, test_model2), evo.model("GN"), evo.tabulate_stats(), sample.fixed_length(100), sample.min_length(100), io.write_db(tmp_dir_name, create=True), io.write_json(tmp_dir_name, create=True), io.write_seqs(tmp_dir_name, create=True), sample.omit_bad_seqs(), sample.omit_degenerates(), sample.omit_duplicated(), sample.take_codon_positions(1), sample.take_named_seqs(), sample.trim_stop_codons(gc=1), translate.select_translatable(), tree.quick_tree(), tree.scale_branches(), tree.uniformize_tree(), ] return applications
def _get_all_composable_apps(): applications = [ align.align_to_ref(), align.progressive_align(model="GY94"), sample.fixed_length(100), sample.min_length(100), io.write_seqs(os.getcwd()), sample.omit_bad_seqs(), sample.omit_degenerates(), sample.take_codon_positions(1), sample.take_named_seqs(), sample.trim_stop_codons(gc=1), ] return applications