Exemple #1
0
 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())
Exemple #2
0
 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()
Exemple #3
0
 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()
Exemple #4
0
 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)
Exemple #5
0
 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()
Exemple #6
0
 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()
Exemple #7
0
 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())
Exemple #8
0
 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()
Exemple #9
0
 def thread(src_ch, tap_ch):
     m = c.mult(src_ch)
     src_ch.close()
     time.sleep(0.1)
     m.tap(tap_ch)
Exemple #10
0
 def thread(src, close_dest, open_dest):
     m = c.mult(src)
     m.tap(close_dest)
     m.tap(open_dest, close=False)
     src.close()
Exemple #11
0
 def thread(src, complete):
     m = c.mult(src)
     m.untap(chan())
     src.close()
     complete.close()
Exemple #12
0
 def thread(src, dest):
     m = c.mult(src)
     m.tap(dest)
     src.b_put('success')
Exemple #13
0
 async def main():
     src = chan()
     m = c.mult(src)
     self.assertIsNone(m.untap(chan()))
     src.close()