Skip to content

Commit c83fe40

Browse files
committed
Assert relay inbox response statuses
Check for 202 Accepted at all 14 previously discarded inbox responses in the LitePub and Mastodon relay tests. This prevents follower-store assertions from hiding errors returned by the inbox handler. #1046 Validated with mise run test-each relay, including code checks and Deno, Node.js, and Bun tests. Changelog: none Assisted-by: Codex:gpt-6-astra
1 parent dd9943e commit c83fe40

2 files changed

Lines changed: 27 additions & 17 deletions

File tree

‎packages/relay/src/litepub.test.ts‎

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -384,10 +384,7 @@ describe("LitePubRelay", () => {
384384

385385
const deliveredActivities = recordInbox(daveInbox);
386386
const response = await relay.fetch(request);
387-
ok(
388-
response.status === 200 || response.status === 202,
389-
`Unexpected inbox response status: ${response.status}`,
390-
);
387+
strictEqual(response.status, 202);
391388

392389
// Verify handler was called
393390
strictEqual(handlerCalled, true);
@@ -460,7 +457,8 @@ describe("LitePubRelay", () => {
460457
rsaPublicKey.id,
461458
);
462459

463-
await relay.fetch(request);
460+
const response = await relay.fetch(request);
461+
strictEqual(response.status, 202);
464462

465463
// Verify follower was NOT stored
466464
const followerData = await kv.get([
@@ -510,7 +508,8 @@ describe("LitePubRelay", () => {
510508
rsaPublicKey.id,
511509
);
512510

513-
await relay.fetch(request);
511+
const response = await relay.fetch(request);
512+
strictEqual(response.status, 202);
514513

515514
// Verify follower was stored with "pending" state
516515
const followerData = await kv.get([
@@ -554,7 +553,8 @@ describe("LitePubRelay", () => {
554553
rsaPublicKey.id,
555554
);
556555

557-
await relay.fetch(request);
556+
const response = await relay.fetch(request);
557+
strictEqual(response.status, 202);
558558

559559
// Verify follower was NOT stored
560560
const followerData = await kv.get([
@@ -611,7 +611,8 @@ describe("LitePubRelay", () => {
611611
rsaPublicKey.id,
612612
);
613613

614-
await relay.fetch(request);
614+
const response = await relay.fetch(request);
615+
strictEqual(response.status, 202);
615616

616617
strictEqual(handlerCallCount, 1);
617618
const follower = await relay.getFollower(followerId);
@@ -668,7 +669,8 @@ describe("LitePubRelay", () => {
668669
rsaPublicKey.id,
669670
);
670671

671-
await relay.fetch(request);
672+
const response = await relay.fetch(request);
673+
strictEqual(response.status, 202);
672674

673675
strictEqual(handlerCallCount, 0);
674676
const followerData = await kv.get([
@@ -731,7 +733,8 @@ describe("LitePubRelay", () => {
731733
rsaPublicKey.id,
732734
);
733735

734-
await relay.fetch(request);
736+
const response = await relay.fetch(request);
737+
strictEqual(response.status, 202);
735738

736739
// Verify follower state changed to "accepted"
737740
const followerData = await kv.get([
@@ -792,7 +795,8 @@ describe("LitePubRelay", () => {
792795
rsaPublicKey.id,
793796
);
794797

795-
await relay.fetch(request);
798+
const response = await relay.fetch(request);
799+
strictEqual(response.status, 202);
796800

797801
deepStrictEqual(await kv.get(["follower", followerId]), invalidRow);
798802
}
@@ -850,7 +854,8 @@ describe("LitePubRelay", () => {
850854
rsaPublicKey.id,
851855
);
852856

853-
await relay.fetch(request);
857+
const response = await relay.fetch(request);
858+
strictEqual(response.status, 202);
854859

855860
const followerData = await kv.get(["follower", followerId]);
856861
strictEqual(followerData, undefined);

‎packages/relay/src/mastodon.test.ts‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -427,7 +427,8 @@ describe("MastodonRelay", () => {
427427
rsaPublicKey.id,
428428
);
429429

430-
await relay.fetch(request);
430+
const response = await relay.fetch(request);
431+
strictEqual(response.status, 202);
431432

432433
// Verify handler was called
433434
strictEqual(handlerCalled, true);
@@ -483,7 +484,8 @@ describe("MastodonRelay", () => {
483484
rsaPublicKey.id,
484485
);
485486

486-
await relay.fetch(request);
487+
const response = await relay.fetch(request);
488+
strictEqual(response.status, 202);
487489

488490
// Verify follower was NOT stored
489491
const followerData = await kv.get([
@@ -546,7 +548,8 @@ describe("MastodonRelay", () => {
546548
rsaPublicKey.id,
547549
);
548550

549-
await relay.fetch(request);
551+
const response = await relay.fetch(request);
552+
strictEqual(response.status, 202);
550553

551554
// Verify follower was removed
552555
const followerData = await kv.get(["follower", followerId]);
@@ -825,7 +828,8 @@ describe("MastodonRelay", () => {
825828
rsaPublicKey.id,
826829
);
827830

828-
await relay.fetch(request);
831+
const response = await relay.fetch(request);
832+
strictEqual(response.status, 202);
829833

830834
// Verify follower was NOT stored
831835
const followerData = await kv.get([
@@ -875,7 +879,8 @@ describe("MastodonRelay", () => {
875879
rsaPublicKey.id,
876880
);
877881

878-
await relay.fetch(request);
882+
const response = await relay.fetch(request);
883+
strictEqual(response.status, 202);
879884

880885
// Verify follower was stored
881886
const followerData = await kv.get([

0 commit comments

Comments
 (0)