def test_minmax(self): rb = RoaringBitmap(range(0, 61440)) assert rb.min() == 0 assert rb.max() == 61439 rb1 = RoaringBitmap(range(0, 61441)) assert rb1.min() == 0 assert rb1.max() == 61440 assert rb1[61440] == 61440 assert list(rb1)[61440] == 61440
def test_clamp(self, single): for name, data in single: a, b = sorted(random.sample(data, 2)) ref = set(data).intersection(range(a, b)) rb = RoaringBitmap(data).intersection(range(a, b)) rb2 = RoaringBitmap(data).clamp(a, b) assert a <= rb2.min() and rb2.max() < b, name assert ref == rb2, (name, a, b) assert rb == rb2, (name, a, b)