async def main(): src_ch, tap_ch = chan(), chan() m = c.mult(src_ch) src_ch.close() await asyncio.sleep(0.1) m.tap(tap_ch) self.assertIsNone(await tap_ch.get())
async def main(): src, dest = chan(), chan() m = c.mult(src) m.tap(dest) await src.put('success') self.assertEqual(await dest.get(), 'success') src.close()
def thread(src, dest1, dest2): m = c.mult(src) m.tap(dest1) m.tap(dest2) src.b_put('item') dest1.b_get() dest2.b_get() m.untap_all()
async def main(): src, close_dest, no_close_dest = chan(), chan(1), chan(1) m = c.mult(src) m.tap(close_dest) m.tap(no_close_dest, close=False) src.close() await asyncio.sleep(0.1) self.assertIs(await close_dest.put('closed'), False) self.assertIs(await no_close_dest.put('not closed'), True)
def thread(src, dest1, dest2, complete): m = c.mult(src) m.tap(dest1) m.tap(dest2) src.b_put('item') dest1.b_get() time.sleep(0.1) self.assertIs(src.offer('failure'), False) dest2.b_get() src.close() complete.close()
async def main(): src, dest1, dest2 = chan(), chan(), chan() m = c.mult(src) m.tap(dest1) m.tap(dest2) await src.put('item') await dest1.get() await asyncio.sleep(0.1) self.assertIs(src.offer('failure'), False) await dest2.get() src.close()
async def main(): src, dest1, dest2 = chan(), chan(), chan() m = c.mult(src) m.tap(dest1) m.tap(dest2) await src.put('item') await dest1.get() await dest2.get() m.untap_all() self.assertIs(await src.put('dropMe'), True) await asyncio.sleep(0.1) self.assertIsNone(dest1.poll()) self.assertIsNone(dest2.poll())
async def main(): src, dest1, dest2 = chan(), chan(), chan() m = c.mult(src) m.tap(dest1) m.tap(dest2) await src.put('item1') await dest1.get() await dest2.get() m.untap(dest2) await src.put('item2') await dest1.get() await asyncio.sleep(0.1) self.assertIsNone(dest2.poll()) src.close()
def thread(src_ch, tap_ch): m = c.mult(src_ch) src_ch.close() time.sleep(0.1) m.tap(tap_ch)
def thread(src, close_dest, open_dest): m = c.mult(src) m.tap(close_dest) m.tap(open_dest, close=False) src.close()
def thread(src, complete): m = c.mult(src) m.untap(chan()) src.close() complete.close()
def thread(src, dest): m = c.mult(src) m.tap(dest) src.b_put('success')
async def main(): src = chan() m = c.mult(src) self.assertIsNone(m.untap(chan())) src.close()