def test_all_consumed_exits_with_empty_iterator(self): items = [4, 7, 2, 1, 4] collection = CollectingSink() sink = collection() remaining = poisson_source(1e6, items, sink) self.assertIsNone(iterator_or_none(remaining))
def test_non_empty_iterator_returns_iterator(self): items = [1, 4, 7, 2, 4] it = iter(items) remaining = iterator_or_none(it) result = list(remaining) self.assertListEqual(result, items)
def test_empty_iterator_returns_none(self): self.assertIsNone(iterator_or_none(empty_iter()))