269 lines
11 KiB
Plaintext
269 lines
11 KiB
Plaintext
TAP version 13
|
|
# Subtest: the host boots the broker, binds a launch in process, and the notifier DMs a blocking decision exactly once
|
|
ok 1 - the host boots the broker, binds a launch in process, and the notifier DMs a blocking decision exactly once
|
|
---
|
|
duration_ms: 1022.692043
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier that dies takes the host down with exit 1, so the unit restarts the pair
|
|
ok 2 - a notifier that dies takes the host down with exit 1, so the unit restarts the pair
|
|
---
|
|
duration_ms: 290.049557
|
|
type: 'test'
|
|
...
|
|
# Subtest: a second host for the same data root refuses with exit 3 while the first runs
|
|
ok 3 - a second host for the same data root refuses with exit 3 while the first runs
|
|
---
|
|
duration_ms: 179.234414
|
|
type: 'test'
|
|
...
|
|
# Subtest: two bus starts racing for one data root leave one host running; the other refuses that a host already runs
|
|
ok 4 - two bus starts racing for one data root leave one host running; the other refuses that a host already runs
|
|
---
|
|
duration_ms: 659.887677
|
|
type: 'test'
|
|
...
|
|
# Subtest: a host takes over a host.lock its dead host left, and puts back a live claim that replaced it meanwhile
|
|
ok 5 - a host takes over a host.lock its dead host left, and puts back a live claim that replaced it meanwhile
|
|
---
|
|
duration_ms: 2.046386
|
|
type: 'test'
|
|
...
|
|
# Subtest: a host.lock that goes between the check and the read is tried again; one that can't be parsed still refuses as unreadable
|
|
ok 6 - a host.lock that goes between the check and the read is tried again; one that can't be parsed still refuses as unreadable
|
|
---
|
|
duration_ms: 1.102222
|
|
type: 'test'
|
|
...
|
|
# Subtest: a live host's lock stays, however old the file is
|
|
ok 7 - a live host's lock stays, however old the file is
|
|
---
|
|
duration_ms: 0.54824
|
|
type: 'test'
|
|
...
|
|
# Subtest: a host.lock left by a host killed with SIGKILL doesn't stop the next bus start
|
|
ok 8 - a host.lock left by a host killed with SIGKILL doesn't stop the next bus start
|
|
---
|
|
duration_ms: 1093.922588
|
|
type: 'test'
|
|
...
|
|
# Subtest: while a host boots, a reader sees no host: the human commands still ask for --business, stop and status find none
|
|
ok 9 - while a host boots, a reader sees no host: the human commands still ask for --business, stop and status find none
|
|
---
|
|
duration_ms: 363.55788
|
|
type: 'test'
|
|
...
|
|
# Subtest: a host started before host.lock existed, holding only host.json, still refuses a second start, which leaves no lock
|
|
ok 10 - a host started before host.lock existed, holding only host.json, still refuses a second start, which leaves no lock
|
|
---
|
|
duration_ms: 40.256031
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker fork that throws leaves no host.lock and no host.json
|
|
ok 11 - a broker fork that throws leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 71.452089
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker send that throws leaves no host.lock and no host.json
|
|
ok 12 - a broker send that throws leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 49.521495
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker that misses its boot wait leaves no host.lock and no host.json
|
|
ok 13 - a broker that misses its boot wait leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 40.674606
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier fork that throws stops the broker and leaves no host.lock and no host.json
|
|
ok 14 - a notifier fork that throws stops the broker and leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 234.528045
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier send that throws stops the broker and leaves no host.lock and no host.json
|
|
ok 15 - a notifier send that throws stops the broker and leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 237.706258
|
|
type: 'test'
|
|
...
|
|
# Subtest: a boot reply with no reader for the business refuses with exit 3 naming it, before the notifier starts, and leaves no host.lock and no live broker
|
|
ok 16 - a boot reply with no reader for the business refuses with exit 3 naming it, before the notifier starts, and leaves no host.lock and no live broker
|
|
---
|
|
duration_ms: 250.66904
|
|
type: 'test'
|
|
...
|
|
# Subtest: a boot reply with no reader for the business refuses with exit 3 naming it, with no notifier, and leaves no host.lock and no live broker
|
|
ok 17 - a boot reply with no reader for the business refuses with exit 3 naming it, with no notifier, and leaves no host.lock and no live broker
|
|
---
|
|
duration_ms: 196.608716
|
|
type: 'test'
|
|
...
|
|
# Subtest: a host.json that can't be written stops both children and leaves no host.lock
|
|
ok 18 - a host.json that can't be written stops both children and leaves no host.lock
|
|
---
|
|
duration_ms: 325.555338
|
|
type: 'test'
|
|
...
|
|
# Subtest: an error event on the broker before it replies fails the start at once, and leaves no host.lock and no live child
|
|
ok 19 - an error event on the broker before it replies fails the start at once, and leaves no host.lock and no live child
|
|
---
|
|
duration_ms: 35.5044
|
|
type: 'test'
|
|
...
|
|
# Subtest: an error event on the notifier before it replies fails the start at once, and leaves no host.lock and no live child
|
|
ok 20 - an error event on the notifier before it replies fails the start at once, and leaves no host.lock and no live child
|
|
---
|
|
duration_ms: 187.03327
|
|
type: 'test'
|
|
...
|
|
# Subtest: an error event on the broker while the notifier starts fails the start once the notifier replies
|
|
ok 21 - an error event on the broker while the notifier starts fails the start once the notifier replies
|
|
---
|
|
duration_ms: 353.473268
|
|
type: 'test'
|
|
...
|
|
# Subtest: an error event on the broker once the host is up stops the host with exit 1, and leaves no host.lock and no host.json
|
|
ok 22 - an error event on the broker once the host is up stops the host with exit 1, and leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 342.614558
|
|
type: 'test'
|
|
...
|
|
# Subtest: an error event on the notifier once the host is up stops the host with exit 1, and leaves no host.lock and no host.json
|
|
ok 23 - an error event on the notifier once the host is up stops the host with exit 1, and leaves no host.lock and no host.json
|
|
---
|
|
duration_ms: 366.012199
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker reply that misses the wait breaks the channel: the late reply answers nothing, later requests refuse, the host exits 1
|
|
ok 24 - a broker reply that misses the wait breaks the channel: the late reply answers nothing, later requests refuse, the host exits 1
|
|
---
|
|
duration_ms: 1197.584716
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker reply with another request's id, or none, breaks the channel and the host exits 1
|
|
ok 25 - a broker reply with another request's id, or none, breaks the channel and the host exits 1
|
|
---
|
|
duration_ms: 412.737097
|
|
type: 'test'
|
|
...
|
|
# Subtest: a broker reply with no request waiting breaks the channel and the host exits 1
|
|
ok 26 - a broker reply with no request waiting breaks the channel and the host exits 1
|
|
---
|
|
duration_ms: 191.268036
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier that refuses stops the broker and the host refuses with exit 3
|
|
ok 27 - a notifier that refuses stops the broker and the host refuses with exit 3
|
|
---
|
|
duration_ms: 255.445466
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier that refuses after the broker died still refuses with exit 3, without a send to the dead broker
|
|
ok 28 - a notifier that refuses after the broker died still refuses with exit 3, without a send to the dead broker
|
|
---
|
|
duration_ms: 270.996451
|
|
type: 'test'
|
|
...
|
|
# Subtest: a notifier that dies before it replies, after the broker died, still refuses, without a send to the dead broker
|
|
ok 29 - a notifier that dies before it replies, after the broker died, still refuses, without a send to the dead broker
|
|
---
|
|
duration_ms: 196.694621
|
|
type: 'test'
|
|
...
|
|
# Subtest: a close send that fails with EPIPE after the notifier refuses still gives the notifier's refusal, exit 3
|
|
ok 30 - a close send that fails with EPIPE after the notifier refuses still gives the notifier's refusal, exit 3
|
|
---
|
|
duration_ms: 225.943126
|
|
type: 'test'
|
|
...
|
|
# Subtest: a close send that fails with EPIPE after the notifier dies unanswered still gives the notifier's error
|
|
ok 31 - a close send that fails with EPIPE after the notifier dies unanswered still gives the notifier's error
|
|
---
|
|
duration_ms: 196.546041
|
|
type: 'test'
|
|
...
|
|
# Subtest: close() whose stop and close sends fail with EPIPE still finishes, with exit 1
|
|
ok 32 - close() whose stop and close sends fail with EPIPE still finishes, with exit 1
|
|
---
|
|
duration_ms: 247.325878
|
|
type: 'test'
|
|
...
|
|
# Subtest: watchChildren reports a child that died before it was called, and one that dies later
|
|
ok 33 - watchChildren reports a child that died before it was called, and one that dies later
|
|
---
|
|
duration_ms: 25.247243
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus stop refuses to signal a live pid that is not a bus host
|
|
ok 34 - bus stop refuses to signal a live pid that is not a bus host
|
|
---
|
|
duration_ms: 202.876756
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus start refuses with exit 3 and the code when the broker refuses to boot; bus status names the lock
|
|
ok 35 - bus start refuses with exit 3 and the code when the broker refuses to boot; bus status names the lock
|
|
---
|
|
duration_ms: 350.250448
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus start refuses with exit 3 without a notifier config
|
|
ok 36 - bus start refuses with exit 3 without a notifier config
|
|
---
|
|
duration_ms: 141.254053
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus start runs until bus stop; status reports it while it runs
|
|
ok 37 - bus start runs until bus stop; status reports it while it runs
|
|
---
|
|
duration_ms: 951.671648
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus start --no-launch says launches are disabled in its host-up line and stops cleanly; with --pm it is a usage error
|
|
ok 38 - bus start --no-launch says launches are disabled in its host-up line and stops cleanly; with --pm it is a usage error
|
|
---
|
|
duration_ms: 717.544239
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus-service.sh renders the unit and installs it into a given directory
|
|
ok 39 - bus-service.sh renders the unit and installs it into a given directory
|
|
---
|
|
duration_ms: 268.27879
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus-service.sh pins the claude binary, refuses one the unit can't carry, and renders without one
|
|
ok 40 - bus-service.sh pins the claude binary, refuses one the unit can't carry, and renders without one
|
|
---
|
|
duration_ms: 476.065024
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus-service.sh refuses a directory pin and keeps a symlink default unresolved
|
|
ok 41 - bus-service.sh refuses a directory pin and keeps a symlink default unresolved
|
|
---
|
|
duration_ms: 108.185969
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus-service.sh refuses a default claude without the execute bit, or in a PATH dir with a space
|
|
ok 42 - bus-service.sh refuses a default claude without the execute bit, or in a PATH dir with a space
|
|
---
|
|
duration_ms: 76.190182
|
|
type: 'test'
|
|
...
|
|
# Subtest: bus start --pm while halted keeps the control host up without launching the chief
|
|
ok 43 - bus start --pm while halted keeps the control host up without launching the chief
|
|
---
|
|
duration_ms: 451.733221
|
|
type: 'test'
|
|
...
|
|
1..43
|
|
# tests 43
|
|
# suites 0
|
|
# pass 43
|
|
# fail 0
|
|
# cancelled 0
|
|
# skipped 0
|
|
# todo 0
|
|
# duration_ms 13428.106601
|