def test_compute_ref_index_table(self):
     refIDs = [5,1,1,1,1,1,1,1,1,1,2,2,2,2,2]
     tbl    = CS.computeRefIndexTable(array(refIDs))
     utbl   = [ 5, 0, 1,
                1, 1, 10,
                2, 10, 15 ]
     assert_equal(sum(tbl.ravel() == utbl), len(utbl))
 def test_get_overlapping_ranges(self):
     for i in [100, 500]:
         for j in [.1, 1, 5, 10]:
             for k in range(0, 10):
                 ar = generate_positions(i, j)
                 idx = CS.computeIndicesDP(ar[:,0], ar[:,1])
                 aArray = hstack((ar, idx))
                 s = random.randint(0, i, 1)
                 e = int(1 + random.exponential(30, 1))
                 x = RQ.getOverlappingRanges(aArray[:,0], aArray[:,1], 
                                             aArray[:,2], aArray[:,3], s, 
                                             s + e + 1)
                 y = brute_force_search(aArray[:,0], aArray[:,1], aArray[:,2], 
                                        aArray[:,3], s, s + e)
                 assert(all(sort(x) == sort(y)))
 def test_get_overlapping_ranges(self):
     for i in [100, 500]:
         for j in [.1, 1, 5, 10]:
             for k in range(0, 10):
                 ar = generate_positions(i, j)
                 idx = CS.computeIndicesDP(ar[:, 0], ar[:, 1])
                 aArray = hstack((ar, idx))
                 s = random.randint(0, i, 1)
                 e = int(1 + random.exponential(30, 1))
                 x = RQ.getOverlappingRanges(aArray[:, 0], aArray[:, 1],
                                             aArray[:, 2], aArray[:, 3], s,
                                             s + e + 1)
                 y = brute_force_search(aArray[:, 0], aArray[:, 1],
                                        aArray[:, 2], aArray[:,
                                                             3], s, s + e)
                 assert (all(sort(x) == sort(y)))
 def test_compute_ref_index_table(self):
     refIDs = [5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2]
     tbl = CS.computeRefIndexTable(array(refIDs))
     utbl = [5, 0, 1, 1, 1, 10, 2, 10, 15]
     assert_equal(sum(tbl.ravel() == utbl), len(utbl))
 def test_number_within_range(self):
     for j in range(0, 100):
         a = sort(random.randint(0, 100, 100))
         s, e = sort(random.randint(0, 100, 2))
         assert_equal(CS.numberWithinRange(s, e, a),
                      brute_force_number_in_range(s, e, a))
 def test___init__(self):
     cmpH5_format = CS.CmpH5Format(h.File(data.getCmpH5(), "r"))
     assert_equal(cmpH5_format.ALN_INFO, 'AlnInfo')
def compare_implementations(size, coverage=1):
    NN = size * coverage
    ar = generate_positions(size, coverage)
    res = CS.computeIndices(ar[:, 0], ar[:, 1])
    resDP = CS.computeIndicesDP(ar[:, 0], ar[:, 1])
    assert (sum(res[:, 0:2] == resDP[:, 0:2]) == NN * 2)
 def test_number_within_range(self):
     for j in range(0, 100):
         a = sort(random.randint(0, 100, 100))
         s,e = sort(random.randint(0, 100, 2))
         assert_equal(CS.numberWithinRange(s,e,a), 
                      brute_force_number_in_range(s,e,a))
def compare_implementations(size, coverage = 1):
    NN = size * coverage
    ar = generate_positions(size, coverage)
    res = CS.computeIndices(ar[:,0], ar[:,1])
    resDP = CS.computeIndicesDP(ar[:,0], ar[:,1])
    assert(sum(res[:,0:2] == resDP[:,0:2]) == NN*2)