Make TestWorkerState aware of prediction tags
This adds support to TestWorkerState for prediction tags as added in #2020. We
want to test that if we tag predictions and subscribe to those tags, the worker
still behaves as expected and we receive the events we expect to receive.
This also updates cancel to assert that send_cancel() was called on the child
worker.