示例#1
0
def is_transitive(A, B, C, windowsize=20, threshold=.5):
    ab = paircomp.do_simple_nxn_compare(A, B, windowsize, threshold)
    bc = paircomp.do_simple_nxn_compare(B, C, windowsize, threshold)
    ac = paircomp.do_simple_nxn_compare(A, C, windowsize, threshold)

    ac_tran1 = paircomp.build_transitive(ab, bc, A, C, threshold)
    ac_tran2 = paircomp.filter_transitively(ab, bc, ac)[2]

    assert ac_tran1 == ac_tran2
示例#2
0
def test():
    el = fasta.load_single(thisdir + 'el.txt')
    br = fasta.load_single(thisdir + 'br.txt')
    re = fasta.load_single(thisdir + 're.txt')

    ### first break the algorithms.

    simple_cmp = None

    try:
        simple_cmp = paircomp.do_simple_nxn_compare("ATCCGRRRRUUUUU", br, 10, .5)
    except:
        pass
    assert simple_cmp is None

    # break on windowsizes
    try:
        simple_cmp = paircomp.do_simple_nxn_compare(el, br, -1, .5)
    except:
        pass
    assert simple_cmp is None

    try:
        simple_cmp = paircomp.do_simple_nxn_compare(el, br, 256, .5)
    except:
        pass
    assert simple_cmp is None

    try:
        # break on windowsizes in relation to sequence len
        simple_cmp = paircomp.do_simple_nxn_compare("AAAAAAAAAAAAAAAAAAA",
                                                    br, 20, .5)
    except:
        pass
    assert simple_cmp is None

    try:
        simple_cmp = paircomp.do_simple_nxn_compare(el, "AAAAAAAAAAAAAAAAAAA",
                                                    20, .5)
    except:
        pass
    assert simple_cmp is None

    # break on threshold
    try:
        simple_cmp = paircomp.do_simple_nxn_compare(el, br, 9, -.01)
    except:
        pass
    assert simple_cmp is None

    try:
        simple_cmp = paircomp.do_simple_nxn_compare(el, br, 9, 1.01)
    except:
        pass
    assert simple_cmp is None

    simple_cmp_1 = paircomp.do_simple_nxn_compare(el, br, 20, .5)

    simple_cmp_2 = paircomp.do_simple_nxn_compare(el, br, 22, .5)

    result = None
    try:
        result = simple_cmp_1.contains(simple_cmp_2)
    except:
        pass
    assert result is None

    try:
        result = simple_cmp_1.equals(simple_cmp_2)
    except:
        pass
    assert result is None

    try:
        result = simple_cmp_1.subtract(simple_cmp_2)
    except:
        pass
    assert result is None

    try:
        result = simple_cmp_1.intersect(simple_cmp_2)
    except:
        pass

    assert result is None

    ### test transitivity stuff

    windowsize = 20
    threshold = 0.7
    ab = paircomp.do_simple_nxn_compare(el, br, windowsize, threshold)
    ab2 = paircomp.do_simple_nxn_compare(el, br, windowsize+1, threshold)
    bc = paircomp.do_simple_nxn_compare(br, re, windowsize, threshold)
    bc2 = paircomp.do_simple_nxn_compare(br, re, windowsize+1, threshold)
    ac = paircomp.do_simple_nxn_compare(el, re, windowsize, threshold)

    results = None
    try:
        results = paircomp.build_transitive(ab, bc, el, br, threshold)
    except:
        pass
    assert results is None

    try:
        results = paircomp.build_transitive(ab, bc, br, re, threshold)
    except Exception, e:
        pass
示例#3
0
    results = None
    try:
        results = paircomp.build_transitive(ab, bc, el, br, threshold)
    except:
        pass
    assert results is None

    try:
        results = paircomp.build_transitive(ab, bc, br, re, threshold)
    except Exception, e:
        pass
    assert results is None

    try:
        results = paircomp.build_transitive(ab2, bc, el, re, threshold)
    except:
        pass
    assert results is None

    try:
        results = paircomp.build_transitive(ab, bc2, el, re, threshold)
    except:
        pass
    assert results is None

    try:
        results = paircomp.filter_transitively(ab2, bc, ac)
    except:
        pass
    assert results is None