@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,12 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: RenderSubject
3
-
4
- ```ts
5
- type RenderSubject = ComponentUi | DomMount;
6
- ```
7
-
8
- Defined in: [src/facets/component/component.types.ts:31](https://github.com/jterrazz/package-test/blob/main/src/facets/component/component.types.ts#L31)
9
-
10
- What `.render()` mounts. A React tree is an element (`<PostTable />`); a
11
- vanilla DOM subject is the FUNCTION that fills a container, which is how a
12
- DOM-only module is called in production too.
@@ -1,67 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ScreenNode
3
-
4
- ```ts
5
- type ScreenNode = object;
6
- ```
7
-
8
- Defined in: [src/model/ports/device.port.ts:68](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L68)
9
-
10
- One node of the projected accessibility tree — the XCUITest page source
11
- with its noise collapsed: unlabeled, identifier-less, valueless wrapper
12
- nodes are dropped and their children hoisted, so the projection stays
13
- stable and golden-friendly. Type names lose the `XCUIElementType` prefix.
14
-
15
- ## Properties
16
-
17
- ### children?
18
-
19
- ```ts
20
- optional children?: ScreenNode[];
21
- ```
22
-
23
- Defined in: [src/model/ports/device.port.ts:69](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L69)
24
-
25
- ***
26
-
27
- ### identifier?
28
-
29
- ```ts
30
- optional identifier?: string;
31
- ```
32
-
33
- Defined in: [src/model/ports/device.port.ts:71](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L71)
34
-
35
- The accessibility identifier, only when it differs from the label.
36
-
37
- ***
38
-
39
- ### label?
40
-
41
- ```ts
42
- optional label?: string;
43
- ```
44
-
45
- Defined in: [src/model/ports/device.port.ts:72](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L72)
46
-
47
- ***
48
-
49
- ### type
50
-
51
- ```ts
52
- type: string;
53
- ```
54
-
55
- Defined in: [src/model/ports/device.port.ts:74](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L74)
56
-
57
- Element type without the `XCUIElementType` prefix — `Button`, `StaticText`.
58
-
59
- ***
60
-
61
- ### value?
62
-
63
- ```ts
64
- optional value?: string;
65
- ```
66
-
67
- Defined in: [src/model/ports/device.port.ts:75](https://github.com/jterrazz/package-test/blob/main/src/model/ports/device.port.ts#L75)
@@ -1,36 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ServerPort
3
-
4
- ```ts
5
- type ServerPort = object;
6
- ```
7
-
8
- Defined in: [src/model/ports/server.port.ts:17](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L17)
9
-
10
- Abstract server interface for specification runners.
11
- Integration mode uses an in-process Hono app; E2E mode uses real HTTP via fetch.
12
-
13
- ## Properties
14
-
15
- ### request
16
-
17
- ```ts
18
- request: (method, path, body?, headers?) => Promise<ServerResponse>;
19
- ```
20
-
21
- Defined in: [src/model/ports/server.port.ts:19](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L19)
22
-
23
- Send an HTTP request and return the parsed response.
24
-
25
- #### Parameters
26
-
27
- | Parameter | Type |
28
- | ------ | ------ |
29
- | `method` | `string` |
30
- | `path` | `string` |
31
- | `body?` | `unknown` |
32
- | `headers?` | `Record`\<`string`, `string`\> |
33
-
34
- #### Returns
35
-
36
- `Promise`\<[`ServerResponse`](ServerResponse.md)\>
@@ -1,46 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ServerResponse
3
-
4
- ```ts
5
- type ServerResponse = object;
6
- ```
7
-
8
- Defined in: [src/model/ports/server.port.ts:4](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L4)
9
-
10
- HTTP response returned by a server port, with parsed JSON body.
11
-
12
- ## Properties
13
-
14
- ### body
15
-
16
- ```ts
17
- body: unknown;
18
- ```
19
-
20
- Defined in: [src/model/ports/server.port.ts:8](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L8)
21
-
22
- Parsed JSON response body, or null if parsing failed.
23
-
24
- ***
25
-
26
- ### headers
27
-
28
- ```ts
29
- headers: Record<string, string>;
30
- ```
31
-
32
- Defined in: [src/model/ports/server.port.ts:10](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L10)
33
-
34
- Response headers as a flat key-value map.
35
-
36
- ***
37
-
38
- ### status
39
-
40
- ```ts
41
- status: number;
42
- ```
43
-
44
- Defined in: [src/model/ports/server.port.ts:6](https://github.com/jterrazz/package-test/blob/main/src/model/ports/server.port.ts#L6)
45
-
46
- HTTP status code.
@@ -1,21 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ServerSpec\<Services\>
3
-
4
- ```ts
5
- type ServerSpec<Services> =
6
- | ((services) =>
7
- | ProcessHandle
8
- | ProcessOptions)
9
- | ProcessHandle
10
- | ProcessOptions;
11
- ```
12
-
13
- Defined in: [src/facets/website/website.specification.ts:32](https://github.com/jterrazz/package-test/blob/main/src/facets/website/website.specification.ts#L32)
14
-
15
- What `server` may be handed as, and what it resolves to.
16
-
17
- ## Type Parameters
18
-
19
- | Type Parameter |
20
- | ------ |
21
- | `Services` *extends* [`ServiceRecord`](ServiceRecord.md) |
@@ -1,216 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ServiceHandle
3
-
4
- ```ts
5
- type ServiceHandle = object;
6
- ```
7
-
8
- Defined in: [src/model/ports/service.port.ts:8](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L8)
9
-
10
- A service handle — returned by factory functions like postgres(), redis().
11
- Mutable: connectionString is populated after the orchestrator starts containers.
12
-
13
- ## Properties
14
-
15
- ### buildConnectionString
16
-
17
- ```ts
18
- buildConnectionString: (host, port) => string;
19
- ```
20
-
21
- Defined in: [src/model/ports/service.port.ts:37](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L37)
22
-
23
- Build the connection string from host and port.
24
-
25
- #### Parameters
26
-
27
- | Parameter | Type |
28
- | ------ | ------ |
29
- | `host` | `string` |
30
- | `port` | `number` |
31
-
32
- #### Returns
33
-
34
- `string`
35
-
36
- ***
37
-
38
- ### connectionString
39
-
40
- ```ts
41
- connectionString: string;
42
- ```
43
-
44
- Defined in: [src/model/ports/service.port.ts:31](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L31)
45
-
46
- Connection string — populated after start.
47
-
48
- ***
49
-
50
- ### createDatabaseAdapter
51
-
52
- ```ts
53
- createDatabaseAdapter: () => DatabasePort | null;
54
- ```
55
-
56
- Defined in: [src/model/ports/service.port.ts:40](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L40)
57
-
58
- Create a DatabasePort adapter (if this is a database). Returns null otherwise.
59
-
60
- #### Returns
61
-
62
- [`DatabasePort`](DatabasePort.md) \| `null`
63
-
64
- ***
65
-
66
- ### defaultImage
67
-
68
- ```ts
69
- readonly defaultImage: string;
70
- ```
71
-
72
- Defined in: [src/model/ports/service.port.ts:25](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L25)
73
-
74
- Default Docker image for this service type.
75
-
76
- ***
77
-
78
- ### defaultPort
79
-
80
- ```ts
81
- readonly defaultPort: number;
82
- ```
83
-
84
- Defined in: [src/model/ports/service.port.ts:22](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L22)
85
-
86
- Default container port for this service type.
87
-
88
- ***
89
-
90
- ### environment
91
-
92
- ```ts
93
- readonly environment: Record<string, string>;
94
- ```
95
-
96
- Defined in: [src/model/ports/service.port.ts:28](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L28)
97
-
98
- Environment variables to pass to the container.
99
-
100
- ***
101
-
102
- ### healthcheck
103
-
104
- ```ts
105
- healthcheck: () => Promise<void>;
106
- ```
107
-
108
- Defined in: [src/model/ports/service.port.ts:43](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L43)
109
-
110
- Verify the service is ready and accepting connections. Throws with context if not.
111
-
112
- #### Returns
113
-
114
- `Promise`\<`void`\>
115
-
116
- ***
117
-
118
- ### initialize
119
-
120
- ```ts
121
- initialize: (dockerDir, root) => Promise<void>;
122
- ```
123
-
124
- Defined in: [src/model/ports/service.port.ts:55](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L55)
125
-
126
- Run initialization scripts (e.g., init.sql). Throws with SQL error
127
- context if it fails.
128
-
129
- `dockerDir` is `<root>/docker` — where a service reads its `init.sql`
130
- from, under its own name. `root` is the project root the specification resolved
131
- (A9), handed down so a service that CACHES something writes it under the
132
- project's own `.artifacts/`, never in a machine-global directory two
133
- checkouts would share.
134
-
135
- #### Parameters
136
-
137
- | Parameter | Type |
138
- | ------ | ------ |
139
- | `dockerDir` | `string` |
140
- | `root` | `string` |
141
-
142
- #### Returns
143
-
144
- `Promise`\<`void`\>
145
-
146
- ***
147
-
148
- ### isolation
149
-
150
- ```ts
151
- isolation: () => IsolationStrategy;
152
- ```
153
-
154
- Defined in: [src/model/ports/service.port.ts:61](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L61)
155
-
156
- Get the isolation strategy for parallel test execution.
157
-
158
- #### Returns
159
-
160
- [`IsolationStrategy`](IsolationStrategy.md)
161
-
162
- ***
163
-
164
- ### reset
165
-
166
- ```ts
167
- reset: () => Promise<void>;
168
- ```
169
-
170
- Defined in: [src/model/ports/service.port.ts:58](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L58)
171
-
172
- Reset state between tests (truncate tables, flush cache, etc.)
173
-
174
- #### Returns
175
-
176
- `Promise`\<`void`\>
177
-
178
- ***
179
-
180
- ### serviceName
181
-
182
- ```ts
183
- serviceName: null | string;
184
- ```
185
-
186
- Defined in: [src/model/ports/service.port.ts:19](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L19)
187
-
188
- The name this handle is known by. Left `null` until the orchestrator
189
- assigns it at start time: it is the kebab-case form of the RECORD KEY,
190
- so `{ analyticsDb: postgres() }` reports as `analytics-db` and reads its
191
- init script from `docker/analytics-db/`. The key is the only name a
192
- specification writes; a handle carries no second one of its own.
193
-
194
- ***
195
-
196
- ### started
197
-
198
- ```ts
199
- started: boolean;
200
- ```
201
-
202
- Defined in: [src/model/ports/service.port.ts:34](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L34)
203
-
204
- Whether this service has been started.
205
-
206
- ***
207
-
208
- ### type
209
-
210
- ```ts
211
- readonly type: string;
212
- ```
213
-
214
- Defined in: [src/model/ports/service.port.ts:10](https://github.com/jterrazz/package-test/blob/main/src/model/ports/service.port.ts#L10)
215
-
216
- Service type identifier.
@@ -1,12 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: ServiceRecord
3
-
4
- ```ts
5
- type ServiceRecord = Record<string, ServiceHandle>;
6
- ```
7
-
8
- Defined in: [src/model/chain/services.ts:16](https://github.com/jterrazz/package-test/blob/main/src/model/chain/services.ts#L16)
9
-
10
- Infrastructure services declared as a named record. Keys become the typed
11
- vocabulary of the whole spec: the server factory receives the same record,
12
- and `.seed()` / `.table()` target databases by key.
@@ -1,84 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecDocument
3
-
4
- ```ts
5
- type SpecDocument = object;
6
- ```
7
-
8
- Defined in: [src/model/literate/spec-document.ts:134](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L134)
9
-
10
- A parsed `<case>.spec.yaml`.
11
-
12
- ## Properties
13
-
14
- ### description
15
-
16
- ```ts
17
- description: string;
18
- ```
19
-
20
- Defined in: [src/model/literate/spec-document.ts:136](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L136)
21
-
22
- The vitest test title.
23
-
24
- ***
25
-
26
- ### descriptionLine
27
-
28
- ```ts
29
- descriptionLine: number;
30
- ```
31
-
32
- Defined in: [src/model/literate/spec-document.ts:138](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L138)
33
-
34
- 1-based line of the `description:` key.
35
-
36
- ***
37
-
38
- ### env
39
-
40
- ```ts
41
- env: SpecEnvToken[];
42
- ```
43
-
44
- Defined in: [src/model/literate/spec-document.ts:139](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L139)
45
-
46
- ***
47
-
48
- ### fixtures
49
-
50
- ```ts
51
- fixtures: SpecFixture[];
52
- ```
53
-
54
- Defined in: [src/model/literate/spec-document.ts:140](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L140)
55
-
56
- ***
57
-
58
- ### kind
59
-
60
- ```ts
61
- kind: SpecKind;
62
- ```
63
-
64
- Defined in: [src/model/literate/spec-document.ts:141](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L141)
65
-
66
- ***
67
-
68
- ### runs
69
-
70
- ```ts
71
- runs: SpecRun[];
72
- ```
73
-
74
- Defined in: [src/model/literate/spec-document.ts:142](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L142)
75
-
76
- ***
77
-
78
- ### serve
79
-
80
- ```ts
81
- serve: SpecServeEntry[];
82
- ```
83
-
84
- Defined in: [src/model/literate/spec-document.ts:143](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L143)
@@ -1,21 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecEnvToken
3
-
4
- ```ts
5
- type SpecEnvToken =
6
- | {
7
- key: string;
8
- kind: "pair";
9
- line: number;
10
- value: string;
11
- }
12
- | {
13
- kind: "set";
14
- line: number;
15
- name: string;
16
- };
17
- ```
18
-
19
- Defined in: [src/model/literate/spec-document.ts:80](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L80)
20
-
21
- One `env:` entry — a bare word naming a registered set, or a `KEY=value` pair.
@@ -1,27 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecFileAssertion
3
-
4
- ```ts
5
- type SpecFileAssertion =
6
- | {
7
- contains: SpecStream[];
8
- equals: null | SpecStream;
9
- kind: "content";
10
- line: number;
11
- path: string;
12
- }
13
- | {
14
- kind: "absent";
15
- line: number;
16
- path: string;
17
- }
18
- | {
19
- kind: "exists";
20
- line: number;
21
- path: string;
22
- };
23
- ```
24
-
25
- Defined in: [src/model/literate/spec-document.ts:105](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L105)
26
-
27
- One `files:` assertion, keyed by a workdir-relative path.
@@ -1,30 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecFixture
3
-
4
- ```ts
5
- type SpecFixture = object;
6
- ```
7
-
8
- Defined in: [src/model/literate/spec-document.ts:92](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L92)
9
-
10
- One `fixture:` entry — a path with the line it was declared on.
11
-
12
- ## Properties
13
-
14
- ### line
15
-
16
- ```ts
17
- line: number;
18
- ```
19
-
20
- Defined in: [src/model/literate/spec-document.ts:93](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L93)
21
-
22
- ***
23
-
24
- ### path
25
-
26
- ```ts
27
- path: string;
28
- ```
29
-
30
- Defined in: [src/model/literate/spec-document.ts:94](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L94)
@@ -1,8 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecKind
3
-
4
- ```ts
5
- type SpecKind = typeof SPEC_KINDS[number];
6
- ```
7
-
8
- Defined in: [src/model/literate/spec-document.ts:77](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L77)
@@ -1,108 +0,0 @@
1
- <!-- GENERATED by `typescript docs` — DO NOT EDIT -->
2
- # Type Alias: SpecRun
3
-
4
- ```ts
5
- type SpecRun = object;
6
- ```
7
-
8
- Defined in: [src/model/literate/spec-document.ts:117](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L117)
9
-
10
- One run: a command, what it must exit with, and what it must have produced.
11
-
12
- ## Properties
13
-
14
- ### command
15
-
16
- ```ts
17
- command: string;
18
- ```
19
-
20
- Defined in: [src/model/literate/spec-document.ts:118](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L118)
21
-
22
- ***
23
-
24
- ### commandLine
25
-
26
- ```ts
27
- commandLine: number;
28
- ```
29
-
30
- Defined in: [src/model/literate/spec-document.ts:120](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L120)
31
-
32
- 1-based line of the `command:` key — the frame a failure points at.
33
-
34
- ***
35
-
36
- ### exitCode
37
-
38
- ```ts
39
- exitCode: number;
40
- ```
41
-
42
- Defined in: [src/model/literate/spec-document.ts:121](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L121)
43
-
44
- ***
45
-
46
- ### files
47
-
48
- ```ts
49
- files: SpecFileAssertion[];
50
- ```
51
-
52
- Defined in: [src/model/literate/spec-document.ts:122](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L122)
53
-
54
- ***
55
-
56
- ### stderr
57
-
58
- ```ts
59
- stderr: null | SpecStream;
60
- ```
61
-
62
- Defined in: [src/model/literate/spec-document.ts:124](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L124)
63
-
64
- `null` when the key is absent, which asserts an empty stream.
65
-
66
- ***
67
-
68
- ### stdin
69
-
70
- ```ts
71
- stdin: null | string;
72
- ```
73
-
74
- Defined in: [src/model/literate/spec-document.ts:126](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L126)
75
-
76
- Written to the child then closed; `null` keeps the empty-pipe EOF.
77
-
78
- ***
79
-
80
- ### stdout
81
-
82
- ```ts
83
- stdout: null | SpecStream;
84
- ```
85
-
86
- Defined in: [src/model/literate/spec-document.ts:127](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L127)
87
-
88
- ***
89
-
90
- ### timeout
91
-
92
- ```ts
93
- timeout: null | number;
94
- ```
95
-
96
- Defined in: [src/model/literate/spec-document.ts:128](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L128)
97
-
98
- ***
99
-
100
- ### waitFor
101
-
102
- ```ts
103
- waitFor: null | string;
104
- ```
105
-
106
- Defined in: [src/model/literate/spec-document.ts:130](https://github.com/jterrazz/package-test/blob/main/src/model/literate/spec-document.ts#L130)
107
-
108
- Only ever on the LAST run — a long-running command ends the session.