Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zoffixznet/3898ea116ee419e80f45c34bbe2c9463 to your computer and use it in GitHub Desktop.
Save zoffixznet/3898ea116ee419e80f45c34bbe2c9463 to your computer and use it in GitHub Desktop.
zoffix@VirtualBox:~/CPANPRC/rakudo$ ./perl6-m -Ilib t/spec/S17-supply/syntax.t
1..60
ok 1 - Got two values emitted by supply
ok 2 - First value correct
ok 3 - Second value correct
ok 4 - Tapping the supply another time works
ok 5 - Only the one emit ran, due to done
ok 6 - Got correct value emitted
ok 7 - Did not continue running code after done
ok 8 - Block with emit then done runs emit subscription once
ok 9 - Block with emit then done runs done subscription once
ok 10 - Block with emit then done never runs quit subscription
ok 11 - Block with emit runs emit subscription once
ok 12 - Block with emit runs done subscription once (automatically)
ok 13 - Block with emit never runs quit subscription
ok 14 - Block with emit then die runs emit subscription once
ok 15 - Block with emit then die never runs done subscription once
ok 16 - Block with emit then die runs quit subscription once
ok 17 - whenever loop ran and emitted first event into supply...
ok 18 - ...and emitted correct first value
ok 19 - whenever loop ran and emitted second event into supply...
ok 20 - ...and emitted correct second value
ok 21 - done not run automatically when there is a whenever
ok 22 - no unexpected quit when there is a whenever
ok 23 - done is run if the whenever gets done
ok 24 - still no unexpected quit
ok 25 - whenever loop produced three values
ok 26 - First value from loop iteration correct
ok 27 - Second value from loop iteration correct
ok 28 - Value from LAST block correct
ok 29 - Multiple whenevers run concurrently
ok 30 - supply block with two whenevers then done runs its done
ok 31 - first whenever closes its supply due to the done
ok 32 - second whenever closes its supply due to the done
ok 33 - take-until style supply emitted correct values
ok 34 - take-until style supply is done after second supply emits
ok 35 - first supply tapped was closed
ok 36 - second supply tapped was closed
ok 37 - supply block with two whenevers starts out not done
ok 38 - still not done after one whenever gets done
ok 39 - but done after all whenevers get done
ok 40 - supply block with whenever that gets a quit emits no values
ok 41 - supply block with whenever that gets a quit is not done
ok 42 - supply block with whenever that gets a quit does quit
ok 43 - emits up to, and emit in a QUIT block, all came out OK
ok 44 - done inside of matched QUIT block worked
ok 45 - did not produce a quit, since exception handled
ok 46 - supply with one whenever that quits but handles it will be done
ok 47 - ...and the handled exception will not cause a quit
ok 48 - supply with one whenever that quits, and QUIT does not match, will still quit
ok 49 - ...and done will not be run
ok 50 - react/whenever with supply that immediately emits values works
ok 51 - Can only be in one whatever block at a time
1..3
ok 1 - 'emit 42' died
ok 2 - right exception type (X::ControlFlow)
ok 3 - .illegal matches emit
ok 52 - did we throws-like X::ControlFlow?
1..3
Aborted
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment