Testing · rule
test.subscriber_failed
Subscriber failed for good during a test.
Area 13, Testing; not declinable; the next step is usually the agent's.
A delivery between the test's steps failed for good, or stopped as
diverged, its rerun no longer matching the record of its steps: here its subscriber's action refuses with a
failure not worth retrying. The report names the event, the subscriber and the attempt,
then the failure as test.unexpected_failure shows one, at the step
whose events were being delivered:
use post/entities { Parcel, ParcelNotFound }use post/types { Address }use post/failures { NoSuchPlace }/// Labels a parcel for its round.action label(parcel_id: Parcel.id, address: Address) fails ParcelNotFound, NoSuchPlace -> Unit { if (address == "The Moon") { reject NoSuchPlace {} } attempt Parcel.update(parcel_id) { set: { labelled: true } }}
use post/actions { label }use post/events { ParcelHandedIn }/// Labels each parcel handed in.subscriber label_handed_in { on: ParcelHandedIn run: label(event.parcel_id, event.address)}
use post/entities { Parcel }test "a parcel for the moon is taken in" { var parcel: Parcel = hand_in("The Moon") assert parcel.labelled == false}
FAIL a parcel for the moon is taken in --> domains/post/actions/hand_in.test.jadpo:4 delivery: `ParcelHandedIn` to subscriber `label_handed_in` failed for good on attempt 1 of 10 failure: `NoSuchPlace` from action label at: domains/post/actions/label.jadpo:8:9 |8 | reject NoSuchPlace {} | ^^^^^^^^^^^^^^^^^^^^^ rejected here code: no_such_place kind: FailureKind.rejected message: We don't deliver there. path: test "a parcel for the moon is taken in" -> action label rule: test.subscriber_failed rerun: jadpo test domains/post/actions/hand_in.test.jadpo:4 --seed 1test failed: 1 failed, 1 action test
Markdown for agents: /docs/errors/test.subscriber_failed.md.Built from Jadpo main at a707efb.