def _contextual_partition(expected, observed, start=None, end=None): edges = set() if start is not None: edges.add(start) if end is not None: edges.add(end) for edge in expected + observed: edges.update(edge) partitions = list() edges = sorted(edges) last = edges[0] for edge in edges[1:]: partitions.append((last, edge)) last = edge expected_parts = list() observed_parts = list() weights = list() for part in partitions: weights.append(part[1] - part[0]) expected_parts.append(_any_overlap(part, expected)) observed_parts.append(_any_overlap(part, observed)) return expected_parts, observed_parts, weights
def test__any_overlap_false(expected, observed): part = expected["false"][0] interval = observed["false"] expected_return = 0 returned = _any_overlap(part, interval) assert returned == expected_return