@jterrazz/test 16.1.1 → 17.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 (304) hide show
  1. package/README.md +45 -171
  2. package/dist/browser/index.js +2 -2980
  3. package/dist/browser/services.js +2 -0
  4. package/dist/browser/stubs.js +2 -0
  5. package/dist/checker.d.ts +6 -1
  6. package/dist/checker.js +4534 -2628
  7. package/dist/config.d.ts +40 -0
  8. package/dist/config.js +309 -0
  9. package/dist/in-place.global-setup.d.ts +11 -0
  10. package/dist/in-place.global-setup.js +21 -0
  11. package/dist/index.d.ts +1653 -3004
  12. package/dist/index.js +5226 -3845
  13. package/dist/mobile-session.global-setup.d.ts +14 -0
  14. package/dist/mobile-session.global-setup.js +31 -0
  15. package/dist/oxlint.cjs +6069 -5634
  16. package/dist/oxlint.d.cts +43 -7212
  17. package/dist/oxlint.d.ts +43 -7212
  18. package/dist/oxlint.js +6127 -5693
  19. package/dist/route-coverage.global-setup.d.ts +42 -0
  20. package/dist/route-coverage.global-setup.js +2 -0
  21. package/dist/services.d.ts +3 -0
  22. package/dist/services.global-setup.d.ts +43 -0
  23. package/dist/services.global-setup.js +2 -0
  24. package/dist/services.js +597 -0
  25. package/dist/shared-appium.adapter.js +428 -0
  26. package/dist/shared-artifacts.js +32 -0
  27. package/dist/shared-chapter.js +7 -0
  28. package/dist/shared-container.port.d.ts +31 -0
  29. package/dist/shared-derived-projects.js +58 -0
  30. package/dist/shared-device.port.d.ts +189 -0
  31. package/dist/shared-exchange.js +447 -0
  32. package/dist/shared-in-place.js +172 -0
  33. package/dist/shared-index.browser.js +3191 -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-literate-plugin.js +183 -0
  40. package/dist/shared-manifest.js +1321 -0
  41. package/dist/shared-pause.js +11 -0
  42. package/dist/shared-peer.js +88 -0
  43. package/dist/shared-playwright.adapter.js +330 -0
  44. package/dist/shared-process.adapter.js +74 -0
  45. package/dist/shared-refusal.js +35 -0
  46. package/dist/shared-resolve.js +24 -0
  47. package/dist/shared-route-coverage.global-setup.js +187 -0
  48. package/dist/shared-scenario-failure.js +198 -0
  49. package/dist/shared-serve.js +365 -0
  50. package/dist/shared-service-images.js +10 -0
  51. package/dist/shared-services.global-setup.js +179 -0
  52. package/dist/shared-session-ledger.js +301 -0
  53. package/dist/shared-setup-entry.js +12 -0
  54. package/dist/shared-source-scan.js +133 -0
  55. package/dist/shared-spec-document.js +365 -0
  56. package/dist/shared-specifications.js +26 -0
  57. package/dist/shared-stream-body.js +130 -0
  58. package/dist/shared-stub-server.js +190 -0
  59. package/dist/shared-temp-root.global-setup.js +80 -0
  60. package/dist/shared-test-baseline.js +26 -0
  61. package/dist/shared-test-section.js +58 -0
  62. package/dist/shared-testcontainers.adapter.js +203 -0
  63. package/dist/shared-tokens.js +55 -0
  64. package/dist/shared-yaml-document.js +119 -0
  65. package/dist/stubs.d.ts +2 -0
  66. package/dist/stubs.js +657 -0
  67. package/dist/temp-root.global-setup.d.ts +7 -0
  68. package/dist/temp-root.global-setup.js +2 -0
  69. package/dist/vitest.d.ts +97 -163
  70. package/dist/vitest.js +373 -525
  71. package/docs/README.md +82 -36
  72. package/docs/concepts/architecture.md +118 -0
  73. package/docs/concepts/conventions.md +333 -0
  74. package/docs/guides/api-specs.md +374 -0
  75. package/docs/guides/cli-specs.md +564 -0
  76. package/docs/guides/component-specs.md +252 -0
  77. package/docs/guides/develop.md +94 -0
  78. package/docs/guides/integration-specs.md +181 -0
  79. package/docs/guides/job-specs.md +180 -0
  80. package/docs/guides/lint-specs.md +174 -0
  81. package/docs/guides/mobile-specs.md +319 -0
  82. package/docs/guides/module-tests.md +149 -0
  83. package/docs/guides/release.md +43 -0
  84. package/docs/guides/spec-documents.md +189 -0
  85. package/docs/guides/website-specs.md +413 -0
  86. package/docs/reference/assertions.md +345 -0
  87. package/docs/reference/glossary.md +20 -0
  88. package/docs/reference/linting.md +483 -0
  89. package/docs/reference/services.md +236 -0
  90. package/docs/reference/stubs.md +498 -0
  91. package/docs/reference/time-and-doubles.md +137 -0
  92. package/docs/reference/tokens.md +258 -0
  93. package/docs/reference/visitor.md +221 -0
  94. package/docs/start/getting-started.md +187 -0
  95. package/docs/start/set-up-a-project.md +214 -0
  96. package/package.json +50 -30
  97. package/schema/spec.schema.json +43 -17
  98. package/dist/appium.adapter.js +0 -489
  99. package/dist/artifacts.js +0 -32
  100. package/dist/fixtures.js +0 -110
  101. package/dist/literate.js +0 -1747
  102. package/dist/match.js +0 -804
  103. package/dist/playwright.adapter.js +0 -438
  104. package/dist/server.js +0 -160
  105. package/dist/stream.js +0 -321
  106. package/dist/substring-warning.js +0 -282
  107. package/docs/01-architecture.md +0 -95
  108. package/docs/02-developing.md +0 -351
  109. package/docs/03-testing.md +0 -495
  110. package/docs/04-operating.md +0 -101
  111. package/docs/05-module-tests.md +0 -152
  112. package/docs/06-integration.md +0 -180
  113. package/docs/07-component.md +0 -246
  114. package/docs/08-website.md +0 -404
  115. package/docs/09-mobile.md +0 -270
  116. package/docs/10-api.md +0 -264
  117. package/docs/11-jobs.md +0 -157
  118. package/docs/12-cli.md +0 -677
  119. package/docs/13-elements.md +0 -248
  120. package/docs/14-assertions.md +0 -314
  121. package/docs/15-tokens.md +0 -253
  122. package/docs/16-contracts.md +0 -438
  123. package/docs/17-services.md +0 -188
  124. package/docs/18-conventions.md +0 -332
  125. package/docs/19-linting.md +0 -512
  126. package/docs/decisions/001-v9-conventions-on-three-channels.md +0 -50
  127. package/docs/decisions/002-the-statique-channel-holds-only-what-upstream-does-not.md +0 -49
  128. package/docs/decisions/003-a-rendered-component-is-a-facet-on-vitest-browser-mode.md +0 -84
  129. package/docs/decisions/004-a-module-against-real-services-or-a-golden-is-the-integration-facet.md +0 -81
  130. package/docs/decisions/005-the-doubles-ladder-is-closed.md +0 -86
  131. package/docs/decisions/006-the-catalogue-reaches-a-file-by-its-role.md +0 -245
  132. package/docs/decisions/007-compose-mode-leaves-the-package.md +0 -53
  133. package/docs/decisions/008-vitest-5-node-24-and-the-native-seams-as-optional-peers.md +0 -75
  134. package/docs/decisions/_template.md +0 -22
  135. package/docs/reference/classes/Matcher.md +0 -120
  136. package/docs/reference/classes/ProcessHandle.md +0 -368
  137. package/docs/reference/functions/defineContract.md +0 -39
  138. package/docs/reference/functions/defineContracts.md +0 -36
  139. package/docs/reference/functions/disabled.md +0 -28
  140. package/docs/reference/functions/enabled.md +0 -20
  141. package/docs/reference/functions/focused.md +0 -26
  142. package/docs/reference/functions/mockOf.md +0 -79
  143. package/docs/reference/functions/postgres.md +0 -31
  144. package/docs/reference/functions/process.md +0 -33
  145. package/docs/reference/functions/redis.md +0 -28
  146. package/docs/reference/functions/required.md +0 -41
  147. package/docs/reference/functions/selected.md +0 -26
  148. package/docs/reference/functions/sqlite.md +0 -33
  149. package/docs/reference/functions/testId.md +0 -20
  150. package/docs/reference/functions/text.md +0 -40
  151. package/docs/reference/functions/valued.md +0 -28
  152. package/docs/reference/functions/waitUntil.md +0 -46
  153. package/docs/reference/functions/within.md +0 -29
  154. package/docs/reference/index.md +0 -196
  155. package/docs/reference/interfaces/BaseResult.md +0 -87
  156. package/docs/reference/interfaces/CallResult.md +0 -160
  157. package/docs/reference/interfaces/CaptureScope.md +0 -82
  158. package/docs/reference/interfaces/CliResult.md +0 -253
  159. package/docs/reference/interfaces/ContainerAccessor.md +0 -166
  160. package/docs/reference/interfaces/DirectoryAccessor.md +0 -33
  161. package/docs/reference/interfaces/FetchResult.md +0 -180
  162. package/docs/reference/interfaces/FilesystemAccessor.md +0 -46
  163. package/docs/reference/interfaces/HttpResult.md +0 -126
  164. package/docs/reference/interfaces/JsonAccessor.md +0 -46
  165. package/docs/reference/interfaces/PageResult.md +0 -356
  166. package/docs/reference/interfaces/RenderResult.md +0 -72
  167. package/docs/reference/interfaces/RenderedText.md +0 -110
  168. package/docs/reference/interfaces/ResponseAccessor.md +0 -47
  169. package/docs/reference/interfaces/ScreenResult.md +0 -128
  170. package/docs/reference/interfaces/TableAccessor.md +0 -26
  171. package/docs/reference/interfaces/TextAccessor.md +0 -96
  172. package/docs/reference/type-aliases/ApiHandle.md +0 -68
  173. package/docs/reference/type-aliases/ApiSpecification.md +0 -213
  174. package/docs/reference/type-aliases/ApiSpecificationOptions.md +0 -68
  175. package/docs/reference/type-aliases/BrowserConsoleMessage.md +0 -30
  176. package/docs/reference/type-aliases/BrowserLinkElement.md +0 -50
  177. package/docs/reference/type-aliases/BrowserMetaElement.md +0 -40
  178. package/docs/reference/type-aliases/BrowserOpenOptions.md +0 -87
  179. package/docs/reference/type-aliases/BrowserPage.md +0 -132
  180. package/docs/reference/type-aliases/BrowserPort.md +0 -51
  181. package/docs/reference/type-aliases/CliEnv.md +0 -11
  182. package/docs/reference/type-aliases/CliHandle.md +0 -80
  183. package/docs/reference/type-aliases/CliInput.md +0 -36
  184. package/docs/reference/type-aliases/CliOutput.md +0 -46
  185. package/docs/reference/type-aliases/CliPort.md +0 -58
  186. package/docs/reference/type-aliases/CliSpecification.md +0 -144
  187. package/docs/reference/type-aliases/CliSpecificationOptions.md +0 -134
  188. package/docs/reference/type-aliases/ComponentChain.md +0 -156
  189. package/docs/reference/type-aliases/ComponentScenario.md +0 -20
  190. package/docs/reference/type-aliases/ComponentUi.md +0 -47
  191. package/docs/reference/type-aliases/ComponentVisitor.md +0 -10
  192. package/docs/reference/type-aliases/ContainerPort.md +0 -113
  193. package/docs/reference/type-aliases/Contract.md +0 -68
  194. package/docs/reference/type-aliases/ContractInput.md +0 -13
  195. package/docs/reference/type-aliases/ContractRequest.md +0 -95
  196. package/docs/reference/type-aliases/ContractResponder.md +0 -23
  197. package/docs/reference/type-aliases/ContractResponse.md +0 -78
  198. package/docs/reference/type-aliases/ContractResponseValue.md +0 -13
  199. package/docs/reference/type-aliases/Contracts.md +0 -48
  200. package/docs/reference/type-aliases/DatabaseKeys.md +0 -16
  201. package/docs/reference/type-aliases/DatabasePort.md +0 -72
  202. package/docs/reference/type-aliases/DeviceOpenOptions.md +0 -46
  203. package/docs/reference/type-aliases/DevicePort.md +0 -51
  204. package/docs/reference/type-aliases/DeviceScreen.md +0 -32
  205. package/docs/reference/type-aliases/DeviceTimeouts.md +0 -39
  206. package/docs/reference/type-aliases/DockerSpecConfig.md +0 -43
  207. package/docs/reference/type-aliases/DomMount.md +0 -21
  208. package/docs/reference/type-aliases/ElementKind.md +0 -27
  209. package/docs/reference/type-aliases/ElementMatch.md +0 -74
  210. package/docs/reference/type-aliases/ElementOptions.md +0 -29
  211. package/docs/reference/type-aliases/ElementRef.md +0 -128
  212. package/docs/reference/type-aliases/ExecOptions.md +0 -37
  213. package/docs/reference/type-aliases/FileAccessor.md +0 -54
  214. package/docs/reference/type-aliases/HonoApp.md +0 -31
  215. package/docs/reference/type-aliases/HttpContractFilter.md +0 -49
  216. package/docs/reference/type-aliases/HttpResponseInit.md +0 -46
  217. package/docs/reference/type-aliases/HttpStreamInit.md +0 -58
  218. package/docs/reference/type-aliases/IntegrationHandle.md +0 -46
  219. package/docs/reference/type-aliases/IntegrationSpecification.md +0 -111
  220. package/docs/reference/type-aliases/IntegrationSpecificationOptions.md +0 -42
  221. package/docs/reference/type-aliases/Intercept.md +0 -19
  222. package/docs/reference/type-aliases/InterceptOptions.md +0 -28
  223. package/docs/reference/type-aliases/InterceptScope.md +0 -11
  224. package/docs/reference/type-aliases/IsolationStrategy.md +0 -75
  225. package/docs/reference/type-aliases/JobHandle.md +0 -34
  226. package/docs/reference/type-aliases/JobsHandle.md +0 -57
  227. package/docs/reference/type-aliases/JobsResult.md +0 -16
  228. package/docs/reference/type-aliases/JobsSpecification.md +0 -94
  229. package/docs/reference/type-aliases/JobsSpecificationOptions.md +0 -56
  230. package/docs/reference/type-aliases/LandmarkKind.md +0 -20
  231. package/docs/reference/type-aliases/LiterateRunFlags.md +0 -27
  232. package/docs/reference/type-aliases/LiterateServeRegistration.md +0 -70
  233. package/docs/reference/type-aliases/MatchFixtureOptions.md +0 -27
  234. package/docs/reference/type-aliases/MatchableRequest.md +0 -61
  235. package/docs/reference/type-aliases/MatcherKind.md +0 -34
  236. package/docs/reference/type-aliases/MobileBackendOptions.md +0 -28
  237. package/docs/reference/type-aliases/MobileElementKind.md +0 -14
  238. package/docs/reference/type-aliases/MobileElementMatch.md +0 -60
  239. package/docs/reference/type-aliases/MobileElementRef.md +0 -20
  240. package/docs/reference/type-aliases/MobileHandle.md +0 -65
  241. package/docs/reference/type-aliases/MobileScenario.md +0 -20
  242. package/docs/reference/type-aliases/MobileSpecification.md +0 -51
  243. package/docs/reference/type-aliases/MobileSpecificationOptions.md +0 -126
  244. package/docs/reference/type-aliases/MobileVisitor.md +0 -81
  245. package/docs/reference/type-aliases/MockOfOptions.md +0 -26
  246. package/docs/reference/type-aliases/MockPort.md +0 -10
  247. package/docs/reference/type-aliases/PinnedClock.md +0 -10
  248. package/docs/reference/type-aliases/PostgresOptions.md +0 -32
  249. package/docs/reference/type-aliases/ProcessOptions.md +0 -112
  250. package/docs/reference/type-aliases/RedisOptions.md +0 -20
  251. package/docs/reference/type-aliases/RenderSubject.md +0 -12
  252. package/docs/reference/type-aliases/ScreenNode.md +0 -67
  253. package/docs/reference/type-aliases/ServerPort.md +0 -36
  254. package/docs/reference/type-aliases/ServerResponse.md +0 -46
  255. package/docs/reference/type-aliases/ServerSpec.md +0 -21
  256. package/docs/reference/type-aliases/ServiceHandle.md +0 -216
  257. package/docs/reference/type-aliases/ServiceRecord.md +0 -12
  258. package/docs/reference/type-aliases/SpecDocument.md +0 -84
  259. package/docs/reference/type-aliases/SpecEnvToken.md +0 -21
  260. package/docs/reference/type-aliases/SpecFileAssertion.md +0 -27
  261. package/docs/reference/type-aliases/SpecFixture.md +0 -30
  262. package/docs/reference/type-aliases/SpecKind.md +0 -8
  263. package/docs/reference/type-aliases/SpecRun.md +0 -108
  264. package/docs/reference/type-aliases/SpecServeEntry.md +0 -40
  265. package/docs/reference/type-aliases/SpecStream.md +0 -32
  266. package/docs/reference/type-aliases/SpecificationConfig.md +0 -290
  267. package/docs/reference/type-aliases/SqliteOptions.md +0 -36
  268. package/docs/reference/type-aliases/SseEvent.md +0 -58
  269. package/docs/reference/type-aliases/StreamBody.md +0 -61
  270. package/docs/reference/type-aliases/TextFilter.md +0 -22
  271. package/docs/reference/type-aliases/VisitScenario.md +0 -20
  272. package/docs/reference/type-aliases/Visitor.md +0 -215
  273. package/docs/reference/type-aliases/WaitUntilOptions.md +0 -46
  274. package/docs/reference/type-aliases/WebsiteBackendOptions.md +0 -37
  275. package/docs/reference/type-aliases/WebsiteHandle.md +0 -51
  276. package/docs/reference/type-aliases/WebsiteSpecification.md +0 -118
  277. package/docs/reference/type-aliases/WebsiteSpecificationOptions.md +0 -40
  278. package/docs/reference/variables/anthropic.md +0 -19
  279. package/docs/reference/variables/banner.md +0 -10
  280. package/docs/reference/variables/button.md +0 -10
  281. package/docs/reference/variables/clock.md +0 -16
  282. package/docs/reference/variables/complementary.md +0 -10
  283. package/docs/reference/variables/component.md +0 -10
  284. package/docs/reference/variables/content.md +0 -10
  285. package/docs/reference/variables/contentinfo.md +0 -10
  286. package/docs/reference/variables/dialog.md +0 -10
  287. package/docs/reference/variables/field.md +0 -10
  288. package/docs/reference/variables/form.md +0 -10
  289. package/docs/reference/variables/heading.md +0 -10
  290. package/docs/reference/variables/http.md +0 -40
  291. package/docs/reference/variables/intercept.md +0 -11
  292. package/docs/reference/variables/link.md +0 -10
  293. package/docs/reference/variables/listitem.md +0 -10
  294. package/docs/reference/variables/main.md +0 -10
  295. package/docs/reference/variables/match.md +0 -8
  296. package/docs/reference/variables/navigation.md +0 -10
  297. package/docs/reference/variables/openai.md +0 -21
  298. package/docs/reference/variables/option.md +0 -17
  299. package/docs/reference/variables/region.md +0 -10
  300. package/docs/reference/variables/row.md +0 -10
  301. package/docs/reference/variables/search.md +0 -10
  302. package/docs/reference/variables/specification.md +0 -8
  303. package/docs/reference/variables/status.md +0 -10
  304. 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.