def test_msa_split_msa__two_groups(): msa = MSA([FASTA("seq1", None, "ACGCAT"), FASTA("seq2", None, "GAGTGA")]) expected = {"1" : MSA([FASTA("seq1", None, "ACCA"), FASTA("seq2", None, "GATG")]), "2" : MSA([FASTA("seq1", None, "GT"), FASTA("seq2", None, "GA")])} assert_equal(msa.split("112"), expected)
def test_msa_split__partial_group(): msa = MSA([FASTA("seq1", None, "ACGCA"), FASTA("seq2", None, "GAGTG")]) expected = {"1" : MSA([FASTA("seq1", None, "AC"), FASTA("seq2", None, "GT")]), "2" : MSA([FASTA("seq1", None, "CA"), FASTA("seq2", None, "AG")]), "3" : MSA([FASTA("seq1", None, "G"), FASTA("seq2", None, "G")])} assert_equal(msa.split("123"), expected)
def test_msa_split__empty_group(): msa = MSA([FASTA("seq1", None, "AC"), FASTA("seq2", None, "GA")]) expected = {"1" : MSA([FASTA("seq1", None, "A"), FASTA("seq2", None, "G")]), "2" : MSA([FASTA("seq1", None, "C"), FASTA("seq2", None, "A")]), "3" : MSA([FASTA("seq1", None, ""), FASTA("seq2", None, "")])} assert_equal(msa.split("123"), expected)
def test_msa_split_msa__no_split_by(): msa = MSA([FASTA("seq1", None, "ACG"), FASTA("seq2", None, "GAT")]) msa.split(split_by = "")
def test_msa_split_msa__single_group(): msa = MSA([FASTA("seq1", None, "ACGCAT"), FASTA("seq2", None, "GAGTGA")]) expected = {'1' : copy.copy(msa)} assert_equal(msa.split("111"), expected)