test(19.7-05): framework unit tests for every validation row and the gate's admin stage

- pier: TestCatalog, TestDispatch, TestGuardRules, TestSessions (Redis
  across two instances and the memory store), TestFanOut; the store clock
  and stateless-server seams in export_test.go
- surf: TestStreamingRoute (throttle, CORS profile and access-log pattern on
  a stream route) and TestPierMount in both builds; the streaming smoke
  restores the mount hook it replaces
- wristband TestMCPScopes; cabana TestAccountContributions (Postgres part:
  transaction and unchanged My account payloads), TestRecordActionPrompt,
  TestScopeLimitForMethods; TestRecordActionPromptRun pins the empty Value
  of an action without a prompt
- vitest: 403 and failed-load cases for My account contributions, the
  cancelled prompt
- gate: every name required (tagged runs included), account.go unchanged
  since 51d088a, admin stage live
This commit is contained in:
Jakub Zych
2026-10-23 14:04:16 +02:00
parent 1111828e8a
commit f14eae96dd
18 changed files with 1696 additions and 10 deletions

View File

@@ -137,4 +137,18 @@ describe('prompted record actions', () => {
expect(dialog()).toBeNull()
expect(done).toEqual([])
})
it('cancelling the prompt posts nothing and a later prompt starts empty', async () => {
const { wrapper, calls, done } = mountActions({})
await click(wrapper, 'link')
await type('acme')
dialog()!.querySelector<HTMLButtonElement>('[data-action="cancel"]')!.click()
await flushPromises()
expect(dialog()).toBeNull()
expect(requestsTo(calls, 'POST', LINK)).toHaveLength(0)
expect(done).toEqual([])
await click(wrapper, 'link')
expect(promptInput()!.value).toBe('')
expect(confirmButton().disabled).toBe(true)
})
})