本文整理汇总了Python中process.sequence.AlignmentList.clear_alignments方法的典型用法代码示例。如果您正苦于以下问题:Python AlignmentList.clear_alignments方法的具体用法?Python AlignmentList.clear_alignments怎么用?Python AlignmentList.clear_alignments使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类process.sequence.AlignmentList
的用法示例。
在下文中一共展示了AlignmentList.clear_alignments方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: PartitonsTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class PartitonsTest(ExpectingTestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList(dna_data_fas, sql_db=sql_db)
self.aln_obj.partitions.reset(cur=self.aln_obj.cur,)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_read_from_nexus(self):
self.aln_obj.partitions.read_from_file(concatenated_small_parNex[0],
no_aln_check=True)
self.assertEqual(len(self.aln_obj.partitions.partitions), 7)
def test_read_from_phylip(self):
self.aln_obj.partitions.read_from_file(concatenated_small_par[0],
no_aln_check=True)
self.assertEqual(len(self.aln_obj.partitions.partitions), 7)
def test_bad_partitions_phy(self):
e = self.aln_obj.partitions.read_from_file(partition_bad_phy[0],
no_aln_check=True)
self.assertTrue(isinstance(e, InvalidPartitionFile))
def test_unsorted_part_phylip(self):
self.aln_obj.partitions.read_from_file(partition_unsorted_phy[0],
no_aln_check=True)
data = [self.aln_obj.partitions.partitions.keys(),
self.aln_obj.partitions.counter]
self.assertEqual(data, [["BaseConc1.fas", "BaseConc2.fas",
"BaseConc3.fas", "BaseConc4.fas",
"BaseConc5.fas", "BaseConc6.fas",
"BaseConc7.fas"],
595])
def test_phylip_dot_notation(self):
self.aln_obj.partitions.read_from_file(partition_dot_not[0],
no_aln_check=True)
data = [self.aln_obj.partitions.partitions.keys(),
self.aln_obj.partitions.counter]
self.assertEqual(data, [["BaseConc1.fas", "BaseConc2.fas",
"BaseConc3.fas", "BaseConc4.fas",
"BaseConc5.fas", "BaseConc6.fas",
"BaseConc7.fas"],
595])
def test_nexus_dot_notation(self):
self.aln_obj.partitions.read_from_file(dot_notation_nex[0],
no_aln_check=True)
data = [self.aln_obj.partitions.partitions.keys(),
self.aln_obj.partitions.counter]
self.assertEqual(data, [["BaseConc1.fas", "BaseConc2.fas",
"BaseConc3.fas", "BaseConc4.fas",
"BaseConc5.fas", "BaseConc6.fas",
"BaseConc7.fas"],
595])
def test_import_new_partscheme(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
self.aln_obj = AlignmentList(concatenated_medium_nexus,
sql_db=sql_db)
self.aln_obj.partitions.reset()
self.aln_obj.partitions.read_from_file(concatenated_small_par[0],
no_aln_check=True)
res = self.aln_obj.partitions.get_partition_names()
self.assertEqual(res, ["BaseConc1.fas", "BaseConc2.fas",
"BaseConc3.fas", "BaseConc4.fas",
"BaseConc5.fas", "BaseConc6.fas",
"BaseConc7.fas"])
def test_add_duplicate_name(self):
#.........这里部分代码省略.........
示例2: SeconaryOpsTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class SeconaryOpsTest(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList(dna_data_fas, sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_summary_stats_all(self):
sum_table, table_data = self.aln_obj.get_summary_stats()
self.assertEqual([sum_table, table_data],
[{'missing': '5 (0.04%)', 'taxa': 24, 'genes': 7,
'informative': '0 (0.0%)', 'gaps': '0 (0.0%)',
'avg_gaps': 0.0, 'avg_missing': 1.0, 'variable': '7 (1.18%)',
'seq_len': 595, 'avg_var': 1.0, 'avg_inf': 0.0},
[['Genes', 'Taxa', 'Alignment length', 'Gaps',
'Gaps per gene', 'Missing data',
'Missing data per gene', 'Variable sites',
'Variable sites per gene', 'Informative sites',
'Informative sites per gene'],
[7, 24, 595, '0 (0.0%)', 0.0, '5 (0.04%)', 1.0,
'7 (1.18%)', 1.0, '0 (0.0%)', 0.0]]])
def test_summary_stats_one_active(self):
sum_table, table_data = self.aln_obj.get_summary_stats([
join(data_path, "BaseConc1.fas")])
self.assertEqual([sum_table, table_data],
[{'missing': '1 (0.05%)', 'taxa': 24, 'genes': 1,
'informative': '0 (0.0%)', 'gaps': '0 (0.0%)',
'avg_gaps': 0.0, 'avg_missing': 1.0, 'variable': '1 (1.18%)',
'seq_len': 85, 'avg_var': 1.0, 'avg_inf': 0.0},
[['Genes', 'Taxa', 'Alignment length', 'Gaps',
'Gaps per gene', 'Missing data',
'Missing data per gene', 'Variable sites',
'Variable sites per gene', 'Informative sites',
'Informative sites per gene'],
[1, 24, 85, '0 (0.0%)', 0.0, '1 (0.05%)', 1.0,
'1 (1.18%)', 1.0, '0 (0.0%)', 0.0]]])
def test_single_aln_outlier_mdata(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
self.assertEqual(self.aln_obj.outlier_missing_data(),
{"exception": "single_alignment"})
def test_single_aln_outlier_mdata_sp(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
print(self.aln_obj.alignments)
self.assertEqual(self.aln_obj.outlier_missing_data_sp(),
{"exception": "single_alignment"})
def test_single_aln_outlier_seg(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
self.assertEqual(self.aln_obj.outlier_segregating(),
{"exception": "single_alignment"})
def test_single_aln_outlier_seg_sp(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
print(self.aln_obj.alignments)
self.assertEqual(self.aln_obj.outlier_segregating_sp(),
{"exception": "single_alignment"})
def test_single_aln_outlier_seqsize(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
self.assertEqual(self.aln_obj.outlier_sequence_size(),
{"exception": "single_alignment"})
def test_single_aln_outlier_seqsize_sp(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
self.assertEqual(self.aln_obj.outlier_sequence_size_sp(),
{"exception": "single_alignment"})
def test_single_aln_average_seqsize_per_species(self):
self.aln_obj.update_active_alignments([dna_data_fas[0]])
#.........这里部分代码省略.........
示例3: LoadAlignmentsTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class LoadAlignmentsTest(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList([], sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_dna_load(self):
self.aln_obj = AlignmentList(dna_data_fas, sql_db=sql_db)
self.assertEqual(["DNA"], self.aln_obj.sequence_code)
def test_protein_load(self):
self.aln_obj = AlignmentList(protein_no_missing, sql_db=sql_db)
self.assertEqual(["Protein"], self.aln_obj.sequence_code)
def test_mixed_type_load(self):
self.aln_obj = AlignmentList(mixed_seq_type, sql_db=sql_db)
self.assertEqual(["DNA", "Protein"],
sorted(self.aln_obj.sequence_code))
def test_class_instance(self):
self.aln_obj = AlignmentList([], sql_db=sql_db)
self.assertIsInstance(self.aln_obj.alignments, OrderedDict)
def test_load_fas(self):
self.aln_obj = AlignmentList(dna_data_fas, sql_db=sql_db)
def test_load_single_fas(self):
single_aln = Alignment(dna_data_fas[0], sql_cursor=self.aln_obj.cur)
def test_load_phy(self):
self.aln_obj = AlignmentList(dna_data_phy, sql_db=sql_db)
def test_load_single_phy(self):
single_aln = Alignment(dna_data_phy[0], sql_cursor=self.aln_obj.cur)
def test_load_single_interleave_phy(self):
single_aln = Alignment(phylip_interleave[0],
sql_cursor=self.aln_obj.cur)
def test_load_nex(self):
self.aln_obj = AlignmentList(dna_data_nex, sql_db=sql_db)
def test_load_single_nex(self):
single_aln = Alignment(dna_data_nex[0], sql_cursor=self.aln_obj.cur)
def test_load_interleave_nex(self):
single_aln = Alignment(concatenated_interleave_nexus[0],
sql_cursor=self.aln_obj.cur)
def test_load_stc(self):
self.aln_obj = AlignmentList(dna_data_stc, sql_db=sql_db)
def test_load_single_stc(self):
single_aln = Alignment(dna_data_stc[0], sql_cursor=self.aln_obj.cur,
db_idx=self.aln_obj._idx + 1)
def test_load_loci(self):
self.aln_obj = AlignmentList(dna_data_loci, sql_db=sql_db)
def test_load_single_loci(self):
single_aln = Alignment(dna_data_loci[0], sql_cursor=self.aln_obj.cur,
db_idx=self.aln_obj._idx + 1)
def test_load_nexus_par(self):
self.aln_obj = AlignmentList(concatenated_medium_nexus, sql_db=sql_db)
self.assertTrue(self.aln_obj.partitions.partitions)
def test_load_wrong_type(self):
self.aln_obj = AlignmentList(bad_file, sql_db=sql_db)
self.assertTrue(self.aln_obj.bad_alignments)
#.........这里部分代码省略.........
示例4: LoadBadAlignmentsTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
#.........这里部分代码省略.........
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_no_colon_interleave.nex",
898,
12])
def test_no_end_colon_interleave(self):
self.aln_obj = AlignmentList(bad_no_end_interleave, sql_db=sql_db)
aln_obj = self.aln_obj.alignments.values()[0]
data = [aln_obj.name,
aln_obj.locus_length,
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_no_end_interleave.nex",
898,
12])
def test_bad_no_colon_nexus(self):
self.aln_obj = AlignmentList(bad_no_colon, sql_db=sql_db)
aln_obj = self.aln_obj.alignments.values()[0]
data = [aln_obj.name,
aln_obj.locus_length,
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_no_colon.nex",
898,
12])
def test_bad_no_end_nexus(self):
self.aln_obj = AlignmentList(bad_no_end, sql_db=sql_db)
aln_obj = self.aln_obj.alignments.values()[0]
data = [aln_obj.name,
aln_obj.locus_length,
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_no_end.nex",
898,
12])
def test_bad_no_header_nexus(self):
self.aln_obj = AlignmentList(bad_no_header, sql_db=sql_db)
self.assertEqual(self.aln_obj.bad_alignments, bad_no_header)
def test_bad_no_matrix_nexus(self):
self.aln_obj = AlignmentList(bad_no_matrix, sql_db=sql_db)
self.assertEqual(self.aln_obj.bad_alignments, bad_no_matrix)
def test_bad_no_format_line_nexus(self):
self.aln_obj = AlignmentList(bad_no_format_line, sql_db=sql_db)
self.assertEqual(self.aln_obj.bad_alignments, bad_no_format_line)
def test_bad_space_in_middle_nexus(self):
self.aln_obj = AlignmentList(bad_space_in_middle, sql_db=sql_db)
aln_obj = self.aln_obj.alignments.values()[0]
data = [aln_obj.name,
aln_obj.locus_length,
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_space_in_middle.nex",
898,
12])
def test_bad_wrong_dimensions_nexus(self):
self.aln_obj = AlignmentList(bad_wrong_dimensions, sql_db=sql_db)
self.assertEqual(self.aln_obj.bad_alignments, bad_wrong_dimensions)
def test_bad_wrong_size_nexus(self):
self.aln_obj = AlignmentList(bad_wrong_size, sql_db=sql_db)
aln_obj = self.aln_obj.alignments.values()[0]
data = [aln_obj.name,
aln_obj.locus_length,
len(aln_obj.taxa_idx)]
self.assertEqual(data, ["bad_wrong_size.nex",
898,
12])
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
示例5: AlignmentManipulationTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class AlignmentManipulationTest(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList(dna_data_fas, sql_db=sql_db)
def tearDown(self):
try:
self.aln_obj.clear_alignments()
except:
pass
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_clear_alns(self):
self.aln_obj.clear_alignments()
aln = AlignmentList([], sql_db=sql_db)
self.assertTrue(compare_inst(self.aln_obj, aln, ["log_progression",
"locus_length",
"partitions",
"cur",
"con"]))
def test_update_act_anls(self):
self.aln_obj.update_active_alignments([join(data_path,
"BaseConc1.fas"),
join(data_path,
"BaseConc2.fas")])
self.assertEqual(list(self.aln_obj.alignments.keys()),
[join(data_path, "BaseConc1.fas"),
join(data_path, "BaseConc2.fas")])
def test_update_act_alns_err(self):
self.aln_obj.update_active_alignments([join(data_path,
"BaseConc1.fas"),
join(data_path,
"BaseConc2.fas"),
join(data_path,
"Wrong_name")])
self.assertEqual(list(self.aln_obj.alignments.keys()),
[join(data_path, "BaseConc1.fas"),
join(data_path, "BaseConc2.fas")])
def test_update_aln_shelve(self):
self.aln_obj.update_active_alignment(join(data_path, "BaseConc1.fas"),
"shelve")
self.assertEqual(list(self.aln_obj.alignments.keys()),
[join(data_path, "BaseConc2.fas"),
join(data_path, "BaseConc3.fas"),
join(data_path, "BaseConc4.fas"),
join(data_path, "BaseConc5.fas"),
join(data_path, "BaseConc6.fas"),
join(data_path, "BaseConc7.fas")])
def test_update_aln_act(self):
self.aln_obj.update_active_alignments([])
self.aln_obj.update_active_alignment(join(data_path, "BaseConc1.fas"),
"active")
self.assertEqual(list(self.aln_obj.alignments.keys()),
[join(data_path, "BaseConc1.fas")])
def test_add_aln_obj(self):
fl = self.aln_obj.alignments.keys()
aln = Alignment(dna_data_loci[0], sql_cursor=self.aln_obj.cur,
sql_con=self.aln_obj.con,
db_idx=self.aln_obj._idx + 1, temp_dir=temp_dir)
self.aln_obj.add_alignments([aln])
self.assertEqual(self.aln_obj.alignments.keys(),
fl + [join(data_path, "c97d5m4p2.loci")])
def test_remove_taxa_from_list(self):
taxa_list = [
"1285_RAD_original",
"130a_RAD_original",
"137a_RAD_original",
"1427_RAD_original",
"167a_RAD_original"
]
expected_taxa = [tx for tx in self.aln_obj.taxa_names if
tx not in taxa_list]
#.........这里部分代码省略.........
示例6: AlignmentVariationFilters
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class AlignmentVariationFilters(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList([], sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_variation_filter_min(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_segregating_sites(None, None)
self.assertEqual(len(self.aln_obj.alignments), 3)
def test_variation_var_sites(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_segregating_sites(1, 2)
self.assertEqual(len(self.aln_obj.alignments), 0)
def test_variation_var_sites2(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_segregating_sites(1, 3)
self.assertEqual(len(self.aln_obj.alignments), 1)
def test_variation_inf_min(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_informative_sites(None, None)
self.assertEqual(len(self.aln_obj.alignments), 3)
def test_variation_inf_sites(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_informative_sites(1, 4)
self.assertEqual(len(self.aln_obj.alignments), 1)
def test_variation_inf_sites2(self):
self.aln_obj.add_alignment_files(variable_data)
self.aln_obj.filter_informative_sites(1, 1)
print(self.aln_obj.alignments)
self.assertEqual(len(self.aln_obj.alignments), 1)
示例7: AlignmentMissingFiltersTest
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class AlignmentMissingFiltersTest(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList([], sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_filter_default(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data.phy",
"trifusion/tests/data/missing_data2.phy"]
)
self.aln_obj.filter_missing_data(25, 50)
s = []
for aln in self.aln_obj:
s.append(aln.locus_length)
self.assertEqual(s, [42, 43])
def test_filter_and_concat(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data.phy",
"trifusion/tests/data/missing_data2.phy"]
)
self.aln_obj.filter_missing_data(25, 50, table_out="master_out")
self.aln_obj.concatenate(table_in="master_out")
self.assertEqual(self.aln_obj.size, 85)
def test_no_filters(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data.phy",
"trifusion/tests/data/missing_data2.phy"]
)
self.aln_obj.filter_missing_data(100, 100)
s = []
for aln in self.aln_obj:
s.append(aln.locus_length)
self.assertEqual(s, [50, 50])
def test_no_missing(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data.phy",
"trifusion/tests/data/missing_data2.phy"]
)
self.aln_obj.filter_missing_data(0, 0)
s = []
for aln in self.aln_obj:
s.append(aln.locus_length)
self.assertEqual(s, [0, 19])
def test_no_data_aln_default_filters(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data3.phy"]
)
self.aln_obj.filter_missing_data(25, 50)
s = None
for aln in self.aln_obj:
s = aln.locus_length
self.assertEqual(s, 0)
def test_no_data_aln_no_filters(self):
self.aln_obj.add_alignment_files(
["trifusion/tests/data/missing_data3.phy"]
)
self.aln_obj.filter_missing_data(100, 100)
s = None
for aln in self.aln_obj:
s = aln.locus_length
self.assertEqual(s, 50)
示例8: AlignmentCodonFilters
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class AlignmentCodonFilters(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList([],sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_codon_filter_pos1(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([True, False, False],
table_out="master_out")
s = []
for _, seq, _ in self.aln_obj.iter_alignments("master_out"):
s.append(seq)
self.assertEqual(s, ["a" * 16] * 10)
def test_codon_filter_pos2(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([False, True, False],
table_out="master_out")
s = []
for _, seq, _ in self.aln_obj.iter_alignments("master_out"):
s.append(seq)
self.assertEqual(s, ["t" * 16] * 10)
def test_codon_filter_pos3(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([False, False, True],
table_out="master_out")
s = []
for _, seq, _ in self.aln_obj.iter_alignments("master_out"):
s.append(seq)
self.assertEqual(s, ["g" * 16] * 10)
def test_codon_filter_pos12(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([True, True, False],
table_out="master_out")
s = []
for _, seq, _ in self.aln_obj.iter_alignments("master_out"):
s.append(seq)
self.assertEqual(s, ["at" * 16] * 10)
def test_codon_filter_pos13(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([True, False, True],
table_out="master_out")
s = []
for _, seq, _ in self.aln_obj.iter_alignments("master_out"):
s.append(seq)
self.assertEqual(s, ["ag" * 16] * 10)
def test_codon_filter_all(self):
self.aln_obj.add_alignment_files(codon_filter)
self.aln_obj.filter_codon_positions([True, True, True])
s = []
for _, seq, _ in self.aln_obj.iter_alignments():
s.append(seq)
self.assertEqual(s, ["atg" * 16] * 10)
示例9: AlignmentTaxaFilters
# 需要导入模块: from process.sequence import AlignmentList [as 别名]
# 或者: from process.sequence.AlignmentList import clear_alignments [as 别名]
class AlignmentTaxaFilters(unittest.TestCase):
def setUp(self):
if not os.path.exists(temp_dir):
os.makedirs(temp_dir)
self.aln_obj = AlignmentList([], sql_db=sql_db)
def tearDown(self):
self.aln_obj.clear_alignments()
self.aln_obj.con.close()
shutil.rmtree(temp_dir)
def test_filter_min_taxa(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_min_taxa(50)
self.assertEqual(len(self.aln_obj.alignments), 5)
def test_filter_min_taxa_max(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_min_taxa(100)
self.assertEqual(len(self.aln_obj.alignments), 1)
def test_filter_min_taxa_min(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_min_taxa(0)
self.assertEqual(len(self.aln_obj.alignments), 7)
def test_filter_by_taxa_include(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_by_taxa(["spa", "spb", "spc", "spd"], "Contain")
self.assertEqual(len(self.aln_obj.alignments), 2)
def test_filter_by_taxa_exclude(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_by_taxa(["spa", "spb", "spc", "spd"], "Exclude")
self.assertEqual(len(self.aln_obj.alignments), 5)
def test_filter_by_taxa_all(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_by_taxa(["no_taxa"], "Contain")
self.assertEqual(len(self.aln_obj.alignments), 0)
def test_filter_by_taxa_from_file(self):
self.aln_obj.add_alignment_files(dna_data_fas)
self.aln_obj.filter_by_taxa("trifusion/tests/data/filter_taxa.txt",
"Contain")
self.assertEqual(len(self.aln_obj.alignments), 2)