@jterrazz/test 16.1.1 → 18.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/README.md +45 -171
  2. package/dist/browser/index.js +1 -2980
  3. package/dist/browser/services.js +1 -0
  4. package/dist/browser/stubs.js +1 -0
  5. package/dist/browser-shared-index.browser.js +3233 -0
  6. package/dist/checker.d.ts +6 -1
  7. package/dist/checker.js +3721 -2624
  8. package/dist/config.d.ts +40 -0
  9. package/dist/config.js +309 -0
  10. package/dist/in-place.global-setup.d.ts +12 -0
  11. package/dist/in-place.global-setup.js +21 -0
  12. package/dist/index.d.ts +1641 -3004
  13. package/dist/index.js +5095 -3835
  14. package/dist/mobile-session.global-setup.d.ts +15 -0
  15. package/dist/mobile-session.global-setup.js +31 -0
  16. package/dist/oxlint.cjs +6069 -5634
  17. package/dist/oxlint.d.cts +43 -7212
  18. package/dist/oxlint.d.ts +43 -7212
  19. package/dist/oxlint.js +3979 -5799
  20. package/dist/route-coverage.global-setup.d.ts +43 -0
  21. package/dist/route-coverage.global-setup.js +1 -0
  22. package/dist/services.d.ts +3 -0
  23. package/dist/services.global-setup.d.ts +43 -0
  24. package/dist/services.global-setup.js +1 -0
  25. package/dist/services.js +597 -0
  26. package/dist/shared-appium.adapter.js +428 -0
  27. package/dist/shared-artifacts.js +34 -0
  28. package/dist/shared-chapter.js +7 -0
  29. package/dist/shared-container.port.d.ts +31 -0
  30. package/dist/shared-derived-projects.js +73 -0
  31. package/dist/shared-device.port.d.ts +189 -0
  32. package/dist/shared-exchange.js +447 -0
  33. package/dist/shared-in-place.js +172 -0
  34. package/dist/shared-index.services.d.ts +346 -0
  35. package/dist/shared-index.stubs.d.ts +287 -0
  36. package/dist/shared-json-shape.js +17 -0
  37. package/dist/shared-landmarks.js +71 -0
  38. package/dist/shared-ledger.js +68 -0
  39. package/dist/shared-listened-port.js +19 -0
  40. package/dist/shared-literate-plugin.js +184 -0
  41. package/dist/shared-manifest.js +1321 -0
  42. package/dist/shared-pause.js +22 -0
  43. package/dist/shared-peer.js +88 -0
  44. package/dist/shared-playwright.adapter.js +328 -0
  45. package/dist/shared-process-alive.js +13 -0
  46. package/dist/shared-process.adapter.js +74 -0
  47. package/dist/shared-record-key.js +13 -0
  48. package/dist/shared-refusal.js +35 -0
  49. package/dist/shared-resolve.js +24 -0
  50. package/dist/shared-route-coverage.global-setup.js +187 -0
  51. package/dist/shared-scenario-failure.js +198 -0
  52. package/dist/shared-serve.js +407 -0
  53. package/dist/shared-service-images.js +10 -0
  54. package/dist/shared-services.global-setup.js +174 -0
  55. package/dist/shared-session-ledger.js +305 -0
  56. package/dist/shared-setup-entry.js +12 -0
  57. package/dist/shared-source-scan.js +133 -0
  58. package/dist/shared-spec-document.js +303 -0
  59. package/dist/shared-spec-grammar.js +66 -0
  60. package/dist/shared-specifications.js +26 -0
  61. package/dist/shared-specs-modules.js +1033 -0
  62. package/dist/shared-stub-reply.js +167 -0
  63. package/dist/shared-stub-server.js +142 -0
  64. package/dist/shared-temp-root.global-setup.js +73 -0
  65. package/dist/shared-test-baseline.js +26 -0
  66. package/dist/shared-test-section.js +58 -0
  67. package/dist/shared-testcontainers.adapter.js +306 -0
  68. package/dist/shared-tokens.js +55 -0
  69. package/dist/shared-yaml-document.js +119 -0
  70. package/dist/stubs.d.ts +2 -0
  71. package/dist/stubs.js +657 -0
  72. package/dist/temp-root.global-setup.d.ts +7 -0
  73. package/dist/temp-root.global-setup.js +1 -0
  74. package/dist/vitest.d.ts +93 -164
  75. package/dist/vitest.js +382 -550
  76. package/docs/README.md +82 -36
  77. package/docs/concepts/architecture.md +118 -0
  78. package/docs/concepts/conventions.md +333 -0
  79. package/docs/guides/api-specs.md +374 -0
  80. package/docs/guides/cli-specs.md +566 -0
  81. package/docs/guides/component-specs.md +252 -0
  82. package/docs/guides/develop.md +97 -0
  83. package/docs/guides/integration-specs.md +181 -0
  84. package/docs/guides/job-specs.md +180 -0
  85. package/docs/guides/lint-specs.md +174 -0
  86. package/docs/guides/mobile-specs.md +319 -0
  87. package/docs/guides/module-tests.md +149 -0
  88. package/docs/guides/release.md +44 -0
  89. package/docs/guides/spec-documents.md +189 -0
  90. package/docs/guides/website-specs.md +413 -0
  91. package/docs/reference/assertions.md +345 -0
  92. package/docs/reference/glossary.md +20 -0
  93. package/docs/reference/linting.md +483 -0
  94. package/docs/reference/services.md +236 -0
  95. package/docs/reference/stubs.md +500 -0
  96. package/docs/reference/time-and-doubles.md +137 -0
  97. package/docs/reference/tokens.md +258 -0
  98. package/docs/reference/visitor.md +221 -0
  99. package/docs/start/getting-started.md +187 -0
  100. package/docs/start/set-up-a-project.md +228 -0
  101. package/package.json +56 -36
  102. package/schema/spec.schema.json +43 -17
  103. package/dist/appium.adapter.js +0 -489
  104. package/dist/artifacts.js +0 -32
  105. package/dist/fixtures.js +0 -110
  106. package/dist/literate.js +0 -1747
  107. package/dist/match.js +0 -804
  108. package/dist/playwright.adapter.js +0 -438
  109. package/dist/server.js +0 -160
  110. package/dist/stream.js +0 -321
  111. package/dist/substring-warning.js +0 -282
  112. package/docs/01-architecture.md +0 -95
  113. package/docs/02-developing.md +0 -351
  114. package/docs/03-testing.md +0 -495
  115. package/docs/04-operating.md +0 -101
  116. package/docs/05-module-tests.md +0 -152
  117. package/docs/06-integration.md +0 -180
  118. package/docs/07-component.md +0 -246
  119. package/docs/08-website.md +0 -404
  120. package/docs/09-mobile.md +0 -270
  121. package/docs/10-api.md +0 -264
  122. package/docs/11-jobs.md +0 -157
  123. package/docs/12-cli.md +0 -677
  124. package/docs/13-elements.md +0 -248
  125. package/docs/14-assertions.md +0 -314
  126. package/docs/15-tokens.md +0 -253
  127. package/docs/16-contracts.md +0 -438
  128. package/docs/17-services.md +0 -188
  129. package/docs/18-conventions.md +0 -332
  130. package/docs/19-linting.md +0 -512
  131. package/docs/decisions/001-v9-conventions-on-three-channels.md +0 -50
  132. package/docs/decisions/002-the-statique-channel-holds-only-what-upstream-does-not.md +0 -49
  133. package/docs/decisions/003-a-rendered-component-is-a-facet-on-vitest-browser-mode.md +0 -84
  134. package/docs/decisions/004-a-module-against-real-services-or-a-golden-is-the-integration-facet.md +0 -81
  135. package/docs/decisions/005-the-doubles-ladder-is-closed.md +0 -86
  136. package/docs/decisions/006-the-catalogue-reaches-a-file-by-its-role.md +0 -245
  137. package/docs/decisions/007-compose-mode-leaves-the-package.md +0 -53
  138. package/docs/decisions/008-vitest-5-node-24-and-the-native-seams-as-optional-peers.md +0 -75
  139. package/docs/decisions/_template.md +0 -22
  140. package/docs/reference/classes/Matcher.md +0 -120
  141. package/docs/reference/classes/ProcessHandle.md +0 -368
  142. package/docs/reference/functions/defineContract.md +0 -39
  143. package/docs/reference/functions/defineContracts.md +0 -36
  144. package/docs/reference/functions/disabled.md +0 -28
  145. package/docs/reference/functions/enabled.md +0 -20
  146. package/docs/reference/functions/focused.md +0 -26
  147. package/docs/reference/functions/mockOf.md +0 -79
  148. package/docs/reference/functions/postgres.md +0 -31
  149. package/docs/reference/functions/process.md +0 -33
  150. package/docs/reference/functions/redis.md +0 -28
  151. package/docs/reference/functions/required.md +0 -41
  152. package/docs/reference/functions/selected.md +0 -26
  153. package/docs/reference/functions/sqlite.md +0 -33
  154. package/docs/reference/functions/testId.md +0 -20
  155. package/docs/reference/functions/text.md +0 -40
  156. package/docs/reference/functions/valued.md +0 -28
  157. package/docs/reference/functions/waitUntil.md +0 -46
  158. package/docs/reference/functions/within.md +0 -29
  159. package/docs/reference/index.md +0 -196
  160. package/docs/reference/interfaces/BaseResult.md +0 -87
  161. package/docs/reference/interfaces/CallResult.md +0 -160
  162. package/docs/reference/interfaces/CaptureScope.md +0 -82
  163. package/docs/reference/interfaces/CliResult.md +0 -253
  164. package/docs/reference/interfaces/ContainerAccessor.md +0 -166
  165. package/docs/reference/interfaces/DirectoryAccessor.md +0 -33
  166. package/docs/reference/interfaces/FetchResult.md +0 -180
  167. package/docs/reference/interfaces/FilesystemAccessor.md +0 -46
  168. package/docs/reference/interfaces/HttpResult.md +0 -126
  169. package/docs/reference/interfaces/JsonAccessor.md +0 -46
  170. package/docs/reference/interfaces/PageResult.md +0 -356
  171. package/docs/reference/interfaces/RenderResult.md +0 -72
  172. package/docs/reference/interfaces/RenderedText.md +0 -110
  173. package/docs/reference/interfaces/ResponseAccessor.md +0 -47
  174. package/docs/reference/interfaces/ScreenResult.md +0 -128
  175. package/docs/reference/interfaces/TableAccessor.md +0 -26
  176. package/docs/reference/interfaces/TextAccessor.md +0 -96
  177. package/docs/reference/type-aliases/ApiHandle.md +0 -68
  178. package/docs/reference/type-aliases/ApiSpecification.md +0 -213
  179. package/docs/reference/type-aliases/ApiSpecificationOptions.md +0 -68
  180. package/docs/reference/type-aliases/BrowserConsoleMessage.md +0 -30
  181. package/docs/reference/type-aliases/BrowserLinkElement.md +0 -50
  182. package/docs/reference/type-aliases/BrowserMetaElement.md +0 -40
  183. package/docs/reference/type-aliases/BrowserOpenOptions.md +0 -87
  184. package/docs/reference/type-aliases/BrowserPage.md +0 -132
  185. package/docs/reference/type-aliases/BrowserPort.md +0 -51
  186. package/docs/reference/type-aliases/CliEnv.md +0 -11
  187. package/docs/reference/type-aliases/CliHandle.md +0 -80
  188. package/docs/reference/type-aliases/CliInput.md +0 -36
  189. package/docs/reference/type-aliases/CliOutput.md +0 -46
  190. package/docs/reference/type-aliases/CliPort.md +0 -58
  191. package/docs/reference/type-aliases/CliSpecification.md +0 -144
  192. package/docs/reference/type-aliases/CliSpecificationOptions.md +0 -134
  193. package/docs/reference/type-aliases/ComponentChain.md +0 -156
  194. package/docs/reference/type-aliases/ComponentScenario.md +0 -20
  195. package/docs/reference/type-aliases/ComponentUi.md +0 -47
  196. package/docs/reference/type-aliases/ComponentVisitor.md +0 -10
  197. package/docs/reference/type-aliases/ContainerPort.md +0 -113
  198. package/docs/reference/type-aliases/Contract.md +0 -68
  199. package/docs/reference/type-aliases/ContractInput.md +0 -13
  200. package/docs/reference/type-aliases/ContractRequest.md +0 -95
  201. package/docs/reference/type-aliases/ContractResponder.md +0 -23
  202. package/docs/reference/type-aliases/ContractResponse.md +0 -78
  203. package/docs/reference/type-aliases/ContractResponseValue.md +0 -13
  204. package/docs/reference/type-aliases/Contracts.md +0 -48
  205. package/docs/reference/type-aliases/DatabaseKeys.md +0 -16
  206. package/docs/reference/type-aliases/DatabasePort.md +0 -72
  207. package/docs/reference/type-aliases/DeviceOpenOptions.md +0 -46
  208. package/docs/reference/type-aliases/DevicePort.md +0 -51
  209. package/docs/reference/type-aliases/DeviceScreen.md +0 -32
  210. package/docs/reference/type-aliases/DeviceTimeouts.md +0 -39
  211. package/docs/reference/type-aliases/DockerSpecConfig.md +0 -43
  212. package/docs/reference/type-aliases/DomMount.md +0 -21
  213. package/docs/reference/type-aliases/ElementKind.md +0 -27
  214. package/docs/reference/type-aliases/ElementMatch.md +0 -74
  215. package/docs/reference/type-aliases/ElementOptions.md +0 -29
  216. package/docs/reference/type-aliases/ElementRef.md +0 -128
  217. package/docs/reference/type-aliases/ExecOptions.md +0 -37
  218. package/docs/reference/type-aliases/FileAccessor.md +0 -54
  219. package/docs/reference/type-aliases/HonoApp.md +0 -31
  220. package/docs/reference/type-aliases/HttpContractFilter.md +0 -49
  221. package/docs/reference/type-aliases/HttpResponseInit.md +0 -46
  222. package/docs/reference/type-aliases/HttpStreamInit.md +0 -58
  223. package/docs/reference/type-aliases/IntegrationHandle.md +0 -46
  224. package/docs/reference/type-aliases/IntegrationSpecification.md +0 -111
  225. package/docs/reference/type-aliases/IntegrationSpecificationOptions.md +0 -42
  226. package/docs/reference/type-aliases/Intercept.md +0 -19
  227. package/docs/reference/type-aliases/InterceptOptions.md +0 -28
  228. package/docs/reference/type-aliases/InterceptScope.md +0 -11
  229. package/docs/reference/type-aliases/IsolationStrategy.md +0 -75
  230. package/docs/reference/type-aliases/JobHandle.md +0 -34
  231. package/docs/reference/type-aliases/JobsHandle.md +0 -57
  232. package/docs/reference/type-aliases/JobsResult.md +0 -16
  233. package/docs/reference/type-aliases/JobsSpecification.md +0 -94
  234. package/docs/reference/type-aliases/JobsSpecificationOptions.md +0 -56
  235. package/docs/reference/type-aliases/LandmarkKind.md +0 -20
  236. package/docs/reference/type-aliases/LiterateRunFlags.md +0 -27
  237. package/docs/reference/type-aliases/LiterateServeRegistration.md +0 -70
  238. package/docs/reference/type-aliases/MatchFixtureOptions.md +0 -27
  239. package/docs/reference/type-aliases/MatchableRequest.md +0 -61
  240. package/docs/reference/type-aliases/MatcherKind.md +0 -34
  241. package/docs/reference/type-aliases/MobileBackendOptions.md +0 -28
  242. package/docs/reference/type-aliases/MobileElementKind.md +0 -14
  243. package/docs/reference/type-aliases/MobileElementMatch.md +0 -60
  244. package/docs/reference/type-aliases/MobileElementRef.md +0 -20
  245. package/docs/reference/type-aliases/MobileHandle.md +0 -65
  246. package/docs/reference/type-aliases/MobileScenario.md +0 -20
  247. package/docs/reference/type-aliases/MobileSpecification.md +0 -51
  248. package/docs/reference/type-aliases/MobileSpecificationOptions.md +0 -126
  249. package/docs/reference/type-aliases/MobileVisitor.md +0 -81
  250. package/docs/reference/type-aliases/MockOfOptions.md +0 -26
  251. package/docs/reference/type-aliases/MockPort.md +0 -10
  252. package/docs/reference/type-aliases/PinnedClock.md +0 -10
  253. package/docs/reference/type-aliases/PostgresOptions.md +0 -32
  254. package/docs/reference/type-aliases/ProcessOptions.md +0 -112
  255. package/docs/reference/type-aliases/RedisOptions.md +0 -20
  256. package/docs/reference/type-aliases/RenderSubject.md +0 -12
  257. package/docs/reference/type-aliases/ScreenNode.md +0 -67
  258. package/docs/reference/type-aliases/ServerPort.md +0 -36
  259. package/docs/reference/type-aliases/ServerResponse.md +0 -46
  260. package/docs/reference/type-aliases/ServerSpec.md +0 -21
  261. package/docs/reference/type-aliases/ServiceHandle.md +0 -216
  262. package/docs/reference/type-aliases/ServiceRecord.md +0 -12
  263. package/docs/reference/type-aliases/SpecDocument.md +0 -84
  264. package/docs/reference/type-aliases/SpecEnvToken.md +0 -21
  265. package/docs/reference/type-aliases/SpecFileAssertion.md +0 -27
  266. package/docs/reference/type-aliases/SpecFixture.md +0 -30
  267. package/docs/reference/type-aliases/SpecKind.md +0 -8
  268. package/docs/reference/type-aliases/SpecRun.md +0 -108
  269. package/docs/reference/type-aliases/SpecServeEntry.md +0 -40
  270. package/docs/reference/type-aliases/SpecStream.md +0 -32
  271. package/docs/reference/type-aliases/SpecificationConfig.md +0 -290
  272. package/docs/reference/type-aliases/SqliteOptions.md +0 -36
  273. package/docs/reference/type-aliases/SseEvent.md +0 -58
  274. package/docs/reference/type-aliases/StreamBody.md +0 -61
  275. package/docs/reference/type-aliases/TextFilter.md +0 -22
  276. package/docs/reference/type-aliases/VisitScenario.md +0 -20
  277. package/docs/reference/type-aliases/Visitor.md +0 -215
  278. package/docs/reference/type-aliases/WaitUntilOptions.md +0 -46
  279. package/docs/reference/type-aliases/WebsiteBackendOptions.md +0 -37
  280. package/docs/reference/type-aliases/WebsiteHandle.md +0 -51
  281. package/docs/reference/type-aliases/WebsiteSpecification.md +0 -118
  282. package/docs/reference/type-aliases/WebsiteSpecificationOptions.md +0 -40
  283. package/docs/reference/variables/anthropic.md +0 -19
  284. package/docs/reference/variables/banner.md +0 -10
  285. package/docs/reference/variables/button.md +0 -10
  286. package/docs/reference/variables/clock.md +0 -16
  287. package/docs/reference/variables/complementary.md +0 -10
  288. package/docs/reference/variables/component.md +0 -10
  289. package/docs/reference/variables/content.md +0 -10
  290. package/docs/reference/variables/contentinfo.md +0 -10
  291. package/docs/reference/variables/dialog.md +0 -10
  292. package/docs/reference/variables/field.md +0 -10
  293. package/docs/reference/variables/form.md +0 -10
  294. package/docs/reference/variables/heading.md +0 -10
  295. package/docs/reference/variables/http.md +0 -40
  296. package/docs/reference/variables/intercept.md +0 -11
  297. package/docs/reference/variables/link.md +0 -10
  298. package/docs/reference/variables/listitem.md +0 -10
  299. package/docs/reference/variables/main.md +0 -10
  300. package/docs/reference/variables/match.md +0 -8
  301. package/docs/reference/variables/navigation.md +0 -10
  302. package/docs/reference/variables/openai.md +0 -21
  303. package/docs/reference/variables/option.md +0 -17
  304. package/docs/reference/variables/region.md +0 -10
  305. package/docs/reference/variables/row.md +0 -10
  306. package/docs/reference/variables/search.md +0 -10
  307. package/docs/reference/variables/specification.md +0 -8
  308. package/docs/reference/variables/status.md +0 -10
  309. package/docs/reference/variables/table.md +0 -10
@@ -1,47 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Interface: ResponseAccessor
3
-
4
- Defined in: [src/model/result/response.ts:12](https://github.com/jterrazz/package-test/blob/main/src/model/result/response.ts#L12)
5
-
6
- Read-only accessor for an HTTP response.
7
-
8
- Assertions go through `expect()`:
9
- `expect(result.response).toMatch('created.http')` compares status,
10
- a subset of headers, and the JSON body against `_expected/<name>` —
11
- with `{{placeholder}}` support in all three.
12
-
13
- ## Properties
14
-
15
- ### body
16
-
17
- ```ts
18
- readonly body: unknown;
19
- ```
20
-
21
- Defined in: [src/model/result/response.ts:14](https://github.com/jterrazz/package-test/blob/main/src/model/result/response.ts#L14)
22
-
23
- The parsed JSON response body (null when parsing failed).
24
-
25
- ***
26
-
27
- ### headers
28
-
29
- ```ts
30
- readonly headers: Record<string, string>;
31
- ```
32
-
33
- Defined in: [src/model/result/response.ts:18](https://github.com/jterrazz/package-test/blob/main/src/model/result/response.ts#L18)
34
-
35
- Response headers as a flat, lower-cased key-value map.
36
-
37
- ***
38
-
39
- ### status
40
-
41
- ```ts
42
- readonly status: number;
43
- ```
44
-
45
- Defined in: [src/model/result/response.ts:20](https://github.com/jterrazz/package-test/blob/main/src/model/result/response.ts#L20)
46
-
47
- The HTTP response status code.
@@ -1,128 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Interface: ScreenResult
3
-
4
- Defined in: [src/facets/mobile/mobile.result.ts:8](https://github.com/jterrazz/package-test/blob/main/src/facets/mobile/mobile.result.ts#L8)
5
-
6
- Result from a `.open()` action — the screen as the device saw it, final state.
7
-
8
- ## Extends
9
-
10
- - [`BaseResult`](BaseResult.md)
11
-
12
- ## Accessors
13
-
14
- ### content
15
-
16
- #### Get Signature
17
-
18
- ```ts
19
- get content(): TextAccessor;
20
- ```
21
-
22
- Defined in: [src/facets/mobile/mobile.result.ts:20](https://github.com/jterrazz/package-test/blob/main/src/facets/mobile/mobile.result.ts#L20)
23
-
24
- The visible screen texts as one stream, in reading order — the scalpel
25
- for a targeted probe: `expect(result.content).toContain('Bookmarked')`.
26
-
27
- ##### Returns
28
-
29
- [`TextAccessor`](TextAccessor.md)
30
-
31
- ***
32
-
33
- ### screen
34
-
35
- #### Get Signature
36
-
37
- ```ts
38
- get screen(): JsonAccessor;
39
- ```
40
-
41
- Defined in: [src/facets/mobile/mobile.result.ts:30](https://github.com/jterrazz/package-test/blob/main/src/facets/mobile/mobile.result.ts#L30)
42
-
43
- The projected accessibility tree as a JSON accessor — the one golden
44
- per screen: `expect(result.screen).toMatch('events.screen.json')`.
45
-
46
- ##### Returns
47
-
48
- [`JsonAccessor`](JsonAccessor.md)
49
-
50
- ## Methods
51
-
52
- ### directory()
53
-
54
- ```ts
55
- directory(path?): DirectoryAccessor;
56
- ```
57
-
58
- Defined in: [src/model/result/result.ts:55](https://github.com/jterrazz/package-test/blob/main/src/model/result/result.ts#L55)
59
-
60
- Access a directory (relative to the working directory) for snapshot assertions.
61
-
62
- #### Parameters
63
-
64
- | Parameter | Type | Default value |
65
- | ------ | ------ | ------ |
66
- | `path` | `string` | `'.'` |
67
-
68
- #### Returns
69
-
70
- [`DirectoryAccessor`](DirectoryAccessor.md)
71
-
72
- #### Inherited from
73
-
74
- [`BaseResult`](BaseResult.md).[`directory`](BaseResult.md#directory)
75
-
76
- ***
77
-
78
- ### file()
79
-
80
- ```ts
81
- file(path): FileAccessor;
82
- ```
83
-
84
- Defined in: [src/model/result/result.ts:61](https://github.com/jterrazz/package-test/blob/main/src/model/result/result.ts#L61)
85
-
86
- Access a single file (relative to the working directory) for content assertions.
87
-
88
- #### Parameters
89
-
90
- | Parameter | Type |
91
- | ------ | ------ |
92
- | `path` | `string` |
93
-
94
- #### Returns
95
-
96
- [`FileAccessor`](../type-aliases/FileAccessor.md)
97
-
98
- #### Inherited from
99
-
100
- [`BaseResult`](BaseResult.md).[`file`](BaseResult.md#file)
101
-
102
- ***
103
-
104
- ### table()
105
-
106
- ```ts
107
- table(tableName, options?): TableAccessor;
108
- ```
109
-
110
- Defined in: [src/model/result/result.ts:86](https://github.com/jterrazz/package-test/blob/main/src/model/result/result.ts#L86)
111
-
112
- Access a database table for row-level assertions via expect() matchers.
113
-
114
- #### Parameters
115
-
116
- | Parameter | Type |
117
- | ------ | ------ |
118
- | `tableName` | `string` |
119
- | `options?` | \{ `database?`: `string`; \} |
120
- | `options.database?` | `string` |
121
-
122
- #### Returns
123
-
124
- [`TableAccessor`](TableAccessor.md)
125
-
126
- #### Inherited from
127
-
128
- [`BaseResult`](BaseResult.md).[`table`](BaseResult.md#table)
@@ -1,26 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Interface: TableAccessor
3
-
4
- Defined in: [src/model/result/table.ts:15](https://github.com/jterrazz/package-test/blob/main/src/model/result/table.ts#L15)
5
-
6
- Read-only accessor for a database table after a specification run.
7
-
8
- Assertions go through `expect()` (async — they query the database):
9
-
10
- await expect(result.table('users', { database: 'db' })).toMatchRows({
11
- columns: ['name'],
12
- rows: [['Alice']],
13
- });
14
- await expect(result.table('users', { database: 'db' })).toBeEmpty();
15
-
16
- ## Properties
17
-
18
- ### name
19
-
20
- ```ts
21
- readonly name: string;
22
- ```
23
-
24
- Defined in: [src/model/result/table.ts:21](https://github.com/jterrazz/package-test/blob/main/src/model/result/table.ts#L21)
25
-
26
- The table name this accessor reads.
@@ -1,96 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Interface: TextAccessor
3
-
4
- Defined in: [src/model/result/text.ts:35](https://github.com/jterrazz/package-test/blob/main/src/model/result/text.ts#L35)
5
-
6
- Read-only accessor for a captured text handle — THE universal one: stdout,
7
- stderr, container logs, and file text all surface as a `TextAccessor`.
8
-
9
- Backed by a primitive string, exposed via [text](RenderedText.md#text), but also provides
10
- `toString()` / `valueOf()` for string coercion, so common patterns like
11
- `String(result.stdout)` and template-literal interpolation still work.
12
-
13
- ANSI escape sequences are stripped by default before every comparison
14
- (CONVENTIONS D6) — `.text` stays raw. The runner `transform` option remains
15
- an escape hatch for application noise not covered by the `{{token}}`
16
- grammar.
17
-
18
- Text operations are **closed** over the type: `.grep(pattern)` returns a
19
- `TextAccessor` (not a bare string), preserving the `_expected/`-resolution
20
- context and the `transform`, so results are chainable
21
- (`result.stdout.grep(a).grep(b)`) and snapshot-able
22
- (`expect(result.stdout.grep('users.ts')).toMatch('block.txt')`).
23
-
24
- Assertions go through `expect()` matchers: `expect(result.stdout).toContain(...)`
25
- and `expect(result.stdout).toMatch('name.txt')` (resolved against
26
- `_expected/<name>`, flat — with `{{token}}` support, CONVENTIONS D4).
27
-
28
- ## Extended by
29
-
30
- - [`RenderedText`](RenderedText.md)
31
-
32
- ## Properties
33
-
34
- ### text
35
-
36
- ```ts
37
- readonly text: string;
38
- ```
39
-
40
- Defined in: [src/model/result/text.ts:43](https://github.com/jterrazz/package-test/blob/main/src/model/result/text.ts#L43)
41
-
42
- The raw captured text (never transformed, ANSI preserved).
43
-
44
- ## Methods
45
-
46
- ### grep()
47
-
48
- ```ts
49
- grep(pattern): TextAccessor;
50
- ```
51
-
52
- Defined in: [src/model/result/text.ts:76](https://github.com/jterrazz/package-test/blob/main/src/model/result/text.ts#L76)
53
-
54
- Keep only the blank-line-separated blocks of the text that contain
55
- `pattern` (how linter/compiler output is structured), returned as a new
56
- `TextAccessor` — the same subject type, so the result is chainable and
57
- snapshot-able. The scalpel for probing large tool outputs; snapshot the
58
- whole surface by default, reach for `.grep()` for targeted checks.
59
-
60
- #### Parameters
61
-
62
- | Parameter | Type |
63
- | ------ | ------ |
64
- | `pattern` | `string` |
65
-
66
- #### Returns
67
-
68
- `TextAccessor`
69
-
70
- ***
71
-
72
- ### toString()
73
-
74
- ```ts
75
- toString(): string;
76
- ```
77
-
78
- Defined in: [src/model/result/text.ts:83](https://github.com/jterrazz/package-test/blob/main/src/model/result/text.ts#L83)
79
-
80
- #### Returns
81
-
82
- `string`
83
-
84
- ***
85
-
86
- ### valueOf()
87
-
88
- ```ts
89
- valueOf(): string;
90
- ```
91
-
92
- Defined in: [src/model/result/text.ts:87](https://github.com/jterrazz/package-test/blob/main/src/model/result/text.ts#L87)
93
-
94
- #### Returns
95
-
96
- `string`
@@ -1,68 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ApiHandle\<DatabaseKey\>
3
-
4
- ```ts
5
- type ApiHandle<DatabaseKey> = object;
6
- ```
7
-
8
- Defined in: [src/facets/api/api.specification.ts:52](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L52)
9
-
10
- The record returned by startApi \| specification.api. Destructure
11
- with the canonical names (CONVENTIONS A3):
12
-
13
- const { api, cleanup, docker } = await specification.api(…);
14
-
15
- ## Type Parameters
16
-
17
- | Type Parameter | Default type |
18
- | ------ | ------ |
19
- | `DatabaseKey` *extends* `string` | `string` |
20
-
21
- ## Properties
22
-
23
- ### api
24
-
25
- ```ts
26
- api: ApiSpecification<DatabaseKey>;
27
- ```
28
-
29
- Defined in: [src/facets/api/api.specification.ts:53](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L53)
30
-
31
- ***
32
-
33
- ### cleanup
34
-
35
- ```ts
36
- cleanup: () => Promise<void>;
37
- ```
38
-
39
- Defined in: [src/facets/api/api.specification.ts:55](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L55)
40
-
41
- Stop all infrastructure started by this specification.
42
-
43
- #### Returns
44
-
45
- `Promise`\<`void`\>
46
-
47
- ***
48
-
49
- ### docker
50
-
51
- ```ts
52
- docker: (containerId) => ContainerAccessor;
53
- ```
54
-
55
- Defined in: [src/facets/api/api.specification.ts:60](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L60)
56
-
57
- Read a running container by id — returns a [ContainerAccessor](../interfaces/ContainerAccessor.md)
58
- usable with `await expect(...).toBeRunning()` and read accessors.
59
-
60
- #### Parameters
61
-
62
- | Parameter | Type |
63
- | ------ | ------ |
64
- | `containerId` | `string` |
65
-
66
- #### Returns
67
-
68
- [`ContainerAccessor`](../interfaces/ContainerAccessor.md)
@@ -1,213 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ApiSpecification\<DatabaseKey\>
3
-
4
- ```ts
5
- type ApiSpecification<DatabaseKey> = object;
6
- ```
7
-
8
- Defined in: [src/model/chain/builder.ts:179](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L179)
9
-
10
- The `api` facet — HTTP chain entry handed out by `specification.api()`.
11
- Setup methods chain; action methods are terminal: they execute the spec
12
- and resolve to the result.
13
-
14
- The `DatabaseKey` parameter is the typed vocabulary of `.seed()`: the keys
15
- of the declared services record that are databases.
16
-
17
- ## Type Parameters
18
-
19
- | Type Parameter | Default type |
20
- | ------ | ------ |
21
- | `DatabaseKey` *extends* `string` | `string` |
22
-
23
- ## Properties
24
-
25
- ### clock
26
-
27
- ```ts
28
- clock: (iso) => ApiSpecification<DatabaseKey>;
29
- ```
30
-
31
- Defined in: [src/model/chain/builder.ts:181](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L181)
32
-
33
- Pin the app's `Date` at `iso` for this chain — the calendar the app reads.
34
-
35
- #### Parameters
36
-
37
- | Parameter | Type |
38
- | ------ | ------ |
39
- | `iso` | `string` |
40
-
41
- #### Returns
42
-
43
- `ApiSpecification`\<`DatabaseKey`\>
44
-
45
- ***
46
-
47
- ### delete
48
-
49
- ```ts
50
- delete: (path) => Promise<HttpResult>;
51
- ```
52
-
53
- Defined in: [src/model/chain/builder.ts:190](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L190)
54
-
55
- Send a DELETE request and resolve with the result.
56
-
57
- #### Parameters
58
-
59
- | Parameter | Type |
60
- | ------ | ------ |
61
- | `path` | `string` |
62
-
63
- #### Returns
64
-
65
- `Promise`\<[`HttpResult`](../interfaces/HttpResult.md)\>
66
-
67
- ***
68
-
69
- ### get
70
-
71
- ```ts
72
- get: (path) => Promise<HttpResult>;
73
- ```
74
-
75
- Defined in: [src/model/chain/builder.ts:192](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L192)
76
-
77
- Send a GET request and resolve with the result.
78
-
79
- #### Parameters
80
-
81
- | Parameter | Type |
82
- | ------ | ------ |
83
- | `path` | `string` |
84
-
85
- #### Returns
86
-
87
- `Promise`\<[`HttpResult`](../interfaces/HttpResult.md)\>
88
-
89
- ***
90
-
91
- ### headers
92
-
93
- ```ts
94
- headers: (headers) => ApiSpecification<DatabaseKey>;
95
- ```
96
-
97
- Defined in: [src/model/chain/builder.ts:183](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L183)
98
-
99
- Set HTTP headers for the request. Multiple calls merge.
100
-
101
- #### Parameters
102
-
103
- | Parameter | Type |
104
- | ------ | ------ |
105
- | `headers` | `Record`\<`string`, `string`\> |
106
-
107
- #### Returns
108
-
109
- `ApiSpecification`\<`DatabaseKey`\>
110
-
111
- ***
112
-
113
- ### intercept
114
-
115
- ```ts
116
- intercept: InterceptMethod<ApiSpecification<DatabaseKey>>;
117
- ```
118
-
119
- Defined in: [src/model/chain/builder.ts:185](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L185)
120
-
121
- Declare outgoing calls — a contract, a list, a composite, or an inline request + response pair.
122
-
123
- ***
124
-
125
- ### post
126
-
127
- ```ts
128
- post: (path, body?) => Promise<HttpResult>;
129
- ```
130
-
131
- Defined in: [src/model/chain/builder.ts:194](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L194)
132
-
133
- Send a POST request (optional inline JSON body) and resolve with the result.
134
-
135
- #### Parameters
136
-
137
- | Parameter | Type |
138
- | ------ | ------ |
139
- | `path` | `string` |
140
- | `body?` | `unknown` |
141
-
142
- #### Returns
143
-
144
- `Promise`\<[`HttpResult`](../interfaces/HttpResult.md)\>
145
-
146
- ***
147
-
148
- ### put
149
-
150
- ```ts
151
- put: (path, body?) => Promise<HttpResult>;
152
- ```
153
-
154
- Defined in: [src/model/chain/builder.ts:196](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L196)
155
-
156
- Send a PUT request (optional inline JSON body) and resolve with the result.
157
-
158
- #### Parameters
159
-
160
- | Parameter | Type |
161
- | ------ | ------ |
162
- | `path` | `string` |
163
- | `body?` | `unknown` |
164
-
165
- #### Returns
166
-
167
- `Promise`\<[`HttpResult`](../interfaces/HttpResult.md)\>
168
-
169
- ***
170
-
171
- ### request
172
-
173
- ```ts
174
- request: (file) => Promise<HttpResult>;
175
- ```
176
-
177
- Defined in: [src/model/chain/builder.ts:198](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L198)
178
-
179
- Send the complete request described by `_requests/<file>` (.http format).
180
-
181
- #### Parameters
182
-
183
- | Parameter | Type |
184
- | ------ | ------ |
185
- | `file` | `string` |
186
-
187
- #### Returns
188
-
189
- `Promise`\<[`HttpResult`](../interfaces/HttpResult.md)\>
190
-
191
- ***
192
-
193
- ### seed
194
-
195
- ```ts
196
- seed: (file, options?) => ApiSpecification<DatabaseKey>;
197
- ```
198
-
199
- Defined in: [src/model/chain/builder.ts:187](https://github.com/jterrazz/package-test/blob/main/src/model/chain/builder.ts#L187)
200
-
201
- Queue a SQL seed file from `_seeds/` to run before the action.
202
-
203
- #### Parameters
204
-
205
- | Parameter | Type |
206
- | ------ | ------ |
207
- | `file` | `string` |
208
- | `options?` | \{ `database?`: `DatabaseKey`; \} |
209
- | `options.database?` | `DatabaseKey` |
210
-
211
- #### Returns
212
-
213
- `ApiSpecification`\<`DatabaseKey`\>
@@ -1,68 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ApiSpecificationOptions\<Services\>
3
-
4
- ```ts
5
- type ApiSpecificationOptions<Services> = object;
6
- ```
7
-
8
- Defined in: [src/facets/api/api.specification.ts:25](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L25)
9
-
10
- Options for startApi \| specification.api.
11
-
12
- ## Type Parameters
13
-
14
- | Type Parameter | Default type |
15
- | ------ | ------ |
16
- | `Services` *extends* [`ServiceRecord`](ServiceRecord.md) | [`ServiceRecord`](ServiceRecord.md) |
17
-
18
- ## Properties
19
-
20
- ### root?
21
-
22
- ```ts
23
- optional root?: string;
24
- ```
25
-
26
- Defined in: [src/facets/api/api.specification.ts:31](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L31)
27
-
28
- Project root override for init scripts and artefact paths. When absent,
29
- the root is auto-discovered by walking up from the calling specification
30
- file to the first directory containing `package.json` (CONVENTIONS A9).
31
-
32
- ***
33
-
34
- ### server
35
-
36
- ```ts
37
- server: (services) => HonoApp;
38
- ```
39
-
40
- Defined in: [src/facets/api/api.specification.ts:36](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L36)
41
-
42
- The app factory — receives the started services record (fully typed)
43
- and returns the Hono app.
44
-
45
- #### Parameters
46
-
47
- | Parameter | Type |
48
- | ------ | ------ |
49
- | `services` | `Services` |
50
-
51
- #### Returns
52
-
53
- [`HonoApp`](HonoApp.md)
54
-
55
- ***
56
-
57
- ### services?
58
-
59
- ```ts
60
- optional services?: Services;
61
- ```
62
-
63
- Defined in: [src/facets/api/api.specification.ts:43](https://github.com/jterrazz/package-test/blob/main/src/facets/api/api.specification.ts#L43)
64
-
65
- Named infrastructure record. Keys become the `database` vocabulary of
66
- `.seed()` / `.table()`, and, kebab-cased, the folder each service reads
67
- its init script from (`{ analyticsDb: postgres() }` →
68
- `docker/analytics-db/init.sql`).
@@ -1,30 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: BrowserConsoleMessage
3
-
4
- ```ts
5
- type BrowserConsoleMessage = object;
6
- ```
7
-
8
- Defined in: [src/model/ports/browser.port.ts:133](https://github.com/jterrazz/package-test/blob/main/src/model/ports/browser.port.ts#L133)
9
-
10
- A console message emitted while the page loaded or the scenario ran.
11
-
12
- ## Properties
13
-
14
- ### text
15
-
16
- ```ts
17
- text: string;
18
- ```
19
-
20
- Defined in: [src/model/ports/browser.port.ts:134](https://github.com/jterrazz/package-test/blob/main/src/model/ports/browser.port.ts#L134)
21
-
22
- ***
23
-
24
- ### type
25
-
26
- ```ts
27
- type: string;
28
- ```
29
-
30
- Defined in: [src/model/ports/browser.port.ts:135](https://github.com/jterrazz/package-test/blob/main/src/model/ports/browser.port.ts#L135)