def test_mt1_mt3_disagree_3p_alt_cut(self,
         mt1_yes_seed_shifted_yes_3p_alt_cut,
         mt3_yes_seed_shifted_no_3p_alt_cut):
     d = ModificationThing.disagreements([
             mt1_yes_seed_shifted_yes_3p_alt_cut,
             mt3_yes_seed_shifted_no_3p_alt_cut])
     assert d == ('is_3p_alt_cut',)
 def test_mt1_mt3_disagree_3p_alt_cut(self,
                                      mt1_yes_seed_shifted_yes_3p_alt_cut,
                                      mt3_yes_seed_shifted_no_3p_alt_cut):
     d = ModificationThing.disagreements([
         mt1_yes_seed_shifted_yes_3p_alt_cut,
         mt3_yes_seed_shifted_no_3p_alt_cut
     ])
     assert d == ('is_3p_alt_cut', )
 def test_other_edited_n17_and_3p_mismatch_with_seed_shift_ex_21b_minus(
         self, main_hit_B_, ex_21b_):
     m = ModificationThing(main_hit_B_, ex_21b_)
     assert m.is_other_edited
     assert m.is_3p_mismatch
     assert m.is_seed_shifted
 def test_other_edited_n17_with_seed_shift_ex_20b(self, main_hit_B, ex_20b):
     m = ModificationThing(main_hit_B, ex_20b)
     assert m.is_other_edited
     assert not m.is_3p_mismatch
     assert m.is_seed_shifted
 def test_3p_mismatch_with_seed_shift_ex_9b_minus(self, main_hit_B_,
                                                  ex_9b_):
     m = ModificationThing(main_hit_B_, ex_9b_)
     assert m.is_3p_mismatch
     assert m.is_seed_shifted
     assert not m.is_3p_alt_cut
 def test_3p_alt_cut_with_seed_shift_ex_7b(self, main_hit_B, ex_7b):
     m = ModificationThing(main_hit_B, ex_7b)
     assert m.is_3p_alt_cut
     assert m.is_seed_shifted
     assert not m.is_3p_mismatch
 def test_mismatches_coords_ex_2(self, main_hit_A, ex_2):
     m = ModificationThing(main_hit_A, ex_2)
     assert (11, 16, 17) == m._mismatches_coords(main_hit_A, ex_2)
 def test_mt2_mt2_no_disagree(self, mt2_no_seed_shifted_yes_3p_alt_cut):
     d = ModificationThing.disagreements([
         mt2_no_seed_shifted_yes_3p_alt_cut,
         mt2_no_seed_shifted_yes_3p_alt_cut
     ])
     assert d == ()
 def mt1_yes_seed_shifted_yes_3p_alt_cut(
         self, main_hit_B, hit_yes_seed_shifted_yes_3p_alt_cut):
     return ModificationThing(main_hit_B,
                              hit_yes_seed_shifted_yes_3p_alt_cut)
 def test_mismatches_coords_ex_2_minus(self, main_hit_A_, ex_2_):
     m = ModificationThing(main_hit_A_, ex_2_)
     assert (9, 14, 15) == m._mismatches_coords(main_hit_A_, ex_2_)
 def test_mismatches_coords_ex_2(self, main_hit_A, ex_2):
     m = ModificationThing(main_hit_A, ex_2)
     assert (11, 16, 17) == m._mismatches_coords(main_hit_A, ex_2)
 def test_mismatches_coords_ex_1_minus(self, main_hit_A_, ex_1_):
     m = ModificationThing(main_hit_A_, ex_1_)
     assert (0, 11, 16, 17) == m._mismatches_coords(main_hit_A_, ex_1_)
 def test_mt2_mt2_no_disagree(self,
         mt2_no_seed_shifted_yes_3p_alt_cut):
     d = ModificationThing.disagreements([
             mt2_no_seed_shifted_yes_3p_alt_cut,
             mt2_no_seed_shifted_yes_3p_alt_cut])
     assert d == ()
 def test_mismatches_coords_ex_2_minus(self, main_hit_A_, ex_2_):
     m = ModificationThing(main_hit_A_, ex_2_)
     assert (9, 14, 15) == m._mismatches_coords(main_hit_A_, ex_2_)
 def test_not_other_edited_n16_no_seed_shift_3p_mismatch_ex_23a(
         self, main_hit_B, ex_23a):
     m = ModificationThing(main_hit_B, ex_23a)
     assert not m.is_other_edited
     assert m.is_3p_mismatch
     assert not m.is_seed_shifted
 def test_not_other_edited_n16_seed_shift_3p_mismatch_ex_24b_minus(
         self, main_hit_B_, ex_24b_):
     m = ModificationThing(main_hit_B_, ex_24b_)
     assert not m.is_other_edited
     assert m.is_3p_mismatch
     assert m.is_seed_shifted
 def test_3p_mismatch_ex_4a(self, main_hit_B, ex_4a):
     m = ModificationThing(main_hit_B, ex_4a)
     assert m.is_3p_mismatch
     assert not m.is_seed_shifted
     assert not m.is_3p_alt_cut
 def mt4_no_seed_shifted_no_3p_alt_cut(self, main_hit_B,
                                       hit_no_seed_shifted_no_3p_alt_cut):
     return ModificationThing(main_hit_B, hit_no_seed_shifted_no_3p_alt_cut)
 def test_3p_mismatch_and_3p_alt_cut_ex_5d_minus(self, main_hit_B_, ex_5d_):
     m = ModificationThing(main_hit_B_, ex_5d_)
     assert m.is_3p_mismatch
     assert m.is_3p_alt_cut
     assert not m.is_seed_shifted
 def test_3p_alt_cut_with_seed_shift_ex_7a_minus(self, main_hit_B_, ex_7a_):
     # minus strand
     m = ModificationThing(main_hit_B_, ex_7a_)
     assert m.is_3p_alt_cut
     assert m.is_seed_shifted
     assert not m.is_3p_mismatch
 def test_mismatches_coords_ex_1_minus(self, main_hit_A_, ex_1_):
     m = ModificationThing(main_hit_A_, ex_1_)
     assert (0, 11, 16, 17) == m._mismatches_coords(main_hit_A_, ex_1_)