Realized previous mock was wrong after testing some cancels. Seems like the isCanceled check is only for ONESHOT, need a better check for partials.
The check here is from guess and check, test driven. Works without breaking previous tests, except for one previous test that actually was a cancel, and should be broken.