async def test_cycle_gen(self): async def gen(): yield 1 yield 2 yield 42 it = ait.cycle(gen()) for k in [1, 2, 42, 1, 2, 42, 1, 2]: self.assertEqual(await ait.next(it), k)
async def test_compress_gen(self): data = "abcdefghijkl" selectors = ait.cycle([1, 0, 0]) it = ait.compress(data, selectors) for k in ["a", "d", "g", "j"]: self.assertEqual(await ait.next(it), k) with self.assertRaises(StopAsyncIteration): await ait.next(it)
async def test_cycle_list(self): it = ait.cycle(slist) for k in ["A", "B", "C", "A", "B", "C", "A", "B"]: self.assertEqual(await ait.next(it), k)