@orkestrel/test 0.0.10 → 0.0.12

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.
package/README.md CHANGED
@@ -77,7 +77,10 @@ The rest of core is `collect` (drains an async iterable), `collectStream` (drain
77
77
  `ReadableStream`), `roundTripJSON` (copies any value `JSONSafe` accepts, including an
78
78
  interface-typed one, and throws rather than turning a non-finite number into `null`), `resolveRoot`
79
79
  (the directory above the calling module, from `import.meta`), and `createHostileValues` (a frozen
80
- array of fresh values that each make a naive reader throw).
80
+ array of fresh values that each make a naive reader throw). Beside them sits the statechart
81
+ contract the fleet repeats: `StateTransition` and `StateScenario` for one row of a transition table,
82
+ `executeScenario` and `executeScenarios` to walk it, and `STATECHART_ATTRIBUTES` and
83
+ `STATECHART_STATUSES` for the harness a browser workspace renders that table in.
81
84
 
82
85
  The server face adds `readInventory`, which reads a checkout into a map of root-relative path to
83
86
  file text that a parity suite can assert against, and `createLoopback`, which binds a server the
@@ -97,27 +100,33 @@ const root = resolveRoot(import.meta)
97
100
  const sources = readInventory(root, ['src/core', 'src/server'], { extensions: ['.ts'] })
98
101
 
99
102
  Object.keys(sources)
100
- // ['src/core/factories.ts', 'src/core/helpers.ts', 'src/core/index.ts', 'src/core/types.ts',
103
+ // ['src/core/constants.ts', 'src/core/factories.ts', 'src/core/helpers.ts', 'src/core/index.ts',
104
+ // 'src/core/types.ts', 'src/core/validators.ts', 'src/server/constants.ts',
101
105
  // 'src/server/factories.ts', 'src/server/helpers.ts', 'src/server/index.ts', 'src/server/types.ts']
102
106
 
103
107
  // The keys are paths; the values are the file contents.
104
108
  sources['src/core/index.ts']
105
- // "export * from './types.js'\nexport * from './helpers.js'\nexport * from './factories.js'\n"
109
+ // "export * from './types.js'\nexport * from './constants.js'\nexport * from './validators.js'\n
110
+ // export * from './helpers.js'\nexport * from './factories.js'\n"
106
111
 
107
112
  // A target is a file or a directory. A named file is read whatever the extension filter says.
108
113
  Object.keys(readInventory(root, ['package.json', 'src/core'], { extensions: ['.ts'] }))
109
- // ['package.json', 'src/core/factories.ts', 'src/core/helpers.ts', 'src/core/index.ts',
110
- // 'src/core/types.ts']
114
+ // ['package.json', 'src/core/constants.ts', 'src/core/factories.ts', 'src/core/helpers.ts',
115
+ // 'src/core/index.ts', 'src/core/types.ts', 'src/core/validators.ts']
111
116
 
112
117
  // An `exclude` entry matches whole key segments. A file key drops that file.
113
118
  Object.keys(
114
119
  readInventory(root, ['src/core'], { extensions: ['.ts'], exclude: ['src/core/index.ts'] }),
115
120
  )
116
- // ['src/core/factories.ts', 'src/core/helpers.ts', 'src/core/types.ts']
121
+ // ['src/core/constants.ts', 'src/core/factories.ts', 'src/core/helpers.ts', 'src/core/types.ts',
122
+ // 'src/core/validators.ts']
117
123
 
118
124
  // A directory key prunes its whole subtree.
119
125
  Object.keys(readInventory(root, ['src'], { extensions: ['.ts'], exclude: ['src/server'] }))
120
- // ['src/core/factories.ts', 'src/core/helpers.ts', 'src/core/index.ts', 'src/core/types.ts']
126
+ // ['src/browser/constants.ts', 'src/browser/factories.ts', 'src/browser/helpers.ts',
127
+ // 'src/browser/index.ts', 'src/browser/types.ts', 'src/core/constants.ts',
128
+ // 'src/core/factories.ts', 'src/core/helpers.ts', 'src/core/index.ts', 'src/core/types.ts',
129
+ // 'src/core/validators.ts']
121
130
  ```
122
131
 
123
132
  Keys are root-relative and `/`-separated whatever the host separator is, though this package's own
@@ -150,7 +159,10 @@ region and disclosure targeting, input and traversal verbs, perception readers,
150
159
  instrument that composites translucent layers, and the capture portfolio. Every acting verb
151
160
  resolves its own target from a role and an accessible name — none takes an element, a component
152
161
  instance, or a selector — and the whole environment imports `vitest/browser` and DOM globals and
153
- nothing else, with `vitest` declared as a peer dependency. The guide's
162
+ nothing else, with `vitest` declared as a peer dependency. Beside the journey verbs are the
163
+ readers a markup conformance check needs: `readClasses` for the classes the markup carries,
164
+ differenced against `readCascade` for the classes the cascade declares, and `extractStyles` for
165
+ the inline `style` attributes and `<style>` elements that go round the cascade entirely. The guide's
154
166
  [Browser](guides/test.md#browser) section carries every export and every voice.
155
167
 
156
168
  `createLoopback` binds a server the test built. The caller constructs it and keeps every route,