def test_score(): """MotifMatchResult scoring""" m = Motif(polymorphisms=(p1,)) mmo = MotifMatchObject(m, match=1) mq = MotifQuery(all_polymorphisms=(p1,p2), defining_polymorphisms=(p1,)) mmr = MotifMatchResult(mq, [mmo]) mmr.score()
def test_filter_by(): """MotifMatchResult filter_by""" m1 = Motif(polymorphisms=(p1,), sources=['a', 'b']) mmo1 = MotifMatchObject(m1, match=1, missing=1) m2 = Motif(polymorphisms=(p3,), sources=['a']) mmo2 = MotifMatchObject(m2, mismatch=1) m3 = Motif(polymorphisms=(p1,p2), sources=['b']) mmo3 = MotifMatchObject(m3, match=2) mq = MotifQuery(all_polymorphisms=(p1,p2), defining_polymorphisms=(p1,p2)) mmr = MotifMatchResult(mq, [mmo1, mmo2, mmo3]) assert_equal(14, mmr.top_score) mmr.filter_by(source='a') assert_equal(1, mmr.top_score) mmr.reset_filter() assert_equal(14, mmr.top_score) mmr.filter_by(sources_in=['a']) assert_equal(1, mmr.top_score) mmr.reset_filter() assert_equal(14, mmr.top_score)