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_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__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__three_groups(): msa = MSA([FASTA("seq1", None, "ACGCAT"), FASTA("seq2", None, "GAGTGA")]) 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, "GT"), FASTA("seq2", None, "GA")]), } assert 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)
def test_msa_split_msa__no_split_by(): msa = MSA([FASTA("seq1", None, "ACG"), FASTA("seq2", None, "GAT")]) with pytest.raises(TypeError): msa.split(split_by="")