@reventlessdev/reventless-gwt 1.0.0-alpha.101 → 1.0.0-alpha.102
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/CHANGELOG.md +8 -0
- package/README.md +90 -0
- package/package.json +8 -8
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 1.0.0-alpha.102 (2026-07-11)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @reventlessdev/reventless-gwt
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
# 1.0.0-alpha.101 (2026-07-11)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @reventlessdev/reventless-gwt
|
package/README.md
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
[](https://www.npmjs.com/package/@reventlessdev/reventless-gwt)
|
|
2
|
+
[](https://opensource.org/licenses/Apache-2.0)
|
|
3
|
+
[](https://docs.reventless.dev)
|
|
4
|
+
|
|
5
|
+
# @reventlessdev/reventless-gwt
|
|
6
|
+
|
|
7
|
+
> ⚠️ **Alpha.** APIs and on-disk formats can change without notice between releases.
|
|
8
|
+
> Pin exact versions and expect breaking changes.
|
|
9
|
+
|
|
10
|
+
**Given-When-Then test DSLs and a CLI runner** for slice-level testing in
|
|
11
|
+
[Reventless](https://docs.reventless.dev) — a spec-driven, event-sourced CQRS
|
|
12
|
+
framework written in [ReScript](https://rescript-lang.org). Each DSL wraps one
|
|
13
|
+
kind of framework component (aggregate, slice, projection, automation,
|
|
14
|
+
translation, flow) in a declarative triple-A (`given / when / then`) surface, and
|
|
15
|
+
the `reventless-dev` CLI discovers and runs those tests across a workspace.
|
|
16
|
+
|
|
17
|
+
## What it provides
|
|
18
|
+
|
|
19
|
+
### ReScript test DSLs
|
|
20
|
+
|
|
21
|
+
Every component kind has a functor that produces the same
|
|
22
|
+
`describe / test / given* / when* / then*` combinator surface:
|
|
23
|
+
|
|
24
|
+
- **`Behavior_GWT`** — event-sourced behavior tests for aggregates and
|
|
25
|
+
StateChangeSlices (`givenEvents → whenCmd → thenEmits`), including DCB
|
|
26
|
+
append-condition assertions.
|
|
27
|
+
- **`Projection_GWT`** / **`MultiSourceProjection_GWT`** — single-source
|
|
28
|
+
(StateViewSlice) and multi-source (ReadModel) projection tests.
|
|
29
|
+
- **`Query_GWT`** — the read side: which query patterns the projected state must
|
|
30
|
+
support (indexes, sub-ids, resolvers).
|
|
31
|
+
- **`Automation_GWT`** — AutomationSlice reaction tests (event → command).
|
|
32
|
+
- **`InboundTranslation_GWT`** / **`OutboundTranslation_GWT`** /
|
|
33
|
+
**`EventMapping_GWT`** / **`Mapping_GWT`** — cross-component translation tests.
|
|
34
|
+
- **`Flow_GWT`** — cross-slice / end-to-end tests that thread one event log
|
|
35
|
+
through a chain of slices, verifying the wiring between tiles of an Event
|
|
36
|
+
Modeling board.
|
|
37
|
+
|
|
38
|
+
### CLI runner
|
|
39
|
+
|
|
40
|
+
The package installs the `reventless-dev` command (alias: `reventless-gwt`):
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
reventless-dev run [--format=<fmt>] [--filter=<id>] [--stream] [--watch] [path...]
|
|
44
|
+
reventless-dev discover [--format=vscode] [path...]
|
|
45
|
+
reventless-dev watch [--format=<fmt>] [--filter=<id>] [path...]
|
|
46
|
+
reventless-dev platform [--format=vscode] [--backend=<b>] [--ui-ports] [path...]
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
It walks a workspace to discover compiled GWT tests, runs them, and reports
|
|
50
|
+
through pluggable formatters — `human`, `json`, `tap`, `junit`, and `vscode`
|
|
51
|
+
(NDJSON). It also emits the domain graph / component inventory used by editor
|
|
52
|
+
surfaces and can launch a local platform for integration runs.
|
|
53
|
+
|
|
54
|
+
## Where it fits
|
|
55
|
+
|
|
56
|
+
`reventless-gwt` builds on
|
|
57
|
+
[`@reventlessdev/reventless-core`](https://www.npmjs.com/package/@reventlessdev/reventless-core)
|
|
58
|
+
and [`@reventlessdev/reventless-spec`](https://www.npmjs.com/package/@reventlessdev/reventless-spec):
|
|
59
|
+
the DSLs test the same component specs you write against core, with no storage or
|
|
60
|
+
cloud adapter required. Its `--format=vscode` output speaks the
|
|
61
|
+
[`@reventlessdev/reventless-domain-protocol`](https://www.npmjs.com/package/@reventlessdev/reventless-domain-protocol)
|
|
62
|
+
NDJSON contract, so the same runs drive the VS Code extension's test tree and
|
|
63
|
+
domain views.
|
|
64
|
+
|
|
65
|
+
## Install
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
pnpm add -D @reventlessdev/reventless-gwt
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Register it as a ReScript dependency in `rescript.json`:
|
|
72
|
+
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"dependencies": ["@reventlessdev/reventless-gwt"]
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Requires ReScript `^12.3.0` (peer dependency). Run the CLI with `pnpm exec
|
|
80
|
+
reventless-dev run` (or add it to a package script).
|
|
81
|
+
|
|
82
|
+
## Links
|
|
83
|
+
|
|
84
|
+
- 📚 Documentation — [docs.reventless.dev](https://docs.reventless.dev)
|
|
85
|
+
- 📦 Repository — [ReventlessDev/reventless-core](https://github.com/ReventlessDev/reventless-core)
|
|
86
|
+
- 📋 [Changelog](./CHANGELOG.md)
|
|
87
|
+
|
|
88
|
+
## License
|
|
89
|
+
|
|
90
|
+
[Apache-2.0](https://opensource.org/licenses/Apache-2.0)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/reventless-gwt",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.102",
|
|
4
4
|
"description": "Given-When-Then DSLs and CLI runner for Reventless slice testing",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"bin": {
|
|
@@ -20,17 +20,17 @@
|
|
|
20
20
|
"chokidar": "^3.6.0",
|
|
21
21
|
"picocolors": "^1.1.1",
|
|
22
22
|
"sury": "11.0.0-alpha.4",
|
|
23
|
-
"@reventlessdev/rescript-
|
|
24
|
-
"@reventlessdev/
|
|
25
|
-
"@reventlessdev/reventless-core": "3.0.0-alpha.
|
|
26
|
-
"@reventlessdev/
|
|
27
|
-
"@reventlessdev/reventless-
|
|
28
|
-
"@reventlessdev/reventless-spec": "3.0.0-alpha.
|
|
23
|
+
"@reventlessdev/rescript-effect": "0.1.0-alpha.27",
|
|
24
|
+
"@reventlessdev/rescript-jest": "1.0.0-alpha.7",
|
|
25
|
+
"@reventlessdev/reventless-core": "3.0.0-alpha.156",
|
|
26
|
+
"@reventlessdev/reventless-infra": "3.0.0-alpha.97",
|
|
27
|
+
"@reventlessdev/reventless-domain-protocol": "1.0.0-alpha.20",
|
|
28
|
+
"@reventlessdev/reventless-spec": "3.0.0-alpha.75"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"rescript": "^12.3.0",
|
|
32
32
|
"sury-ppx": "11.0.0-alpha.2",
|
|
33
|
-
"@reventlessdev/reventless-ppx": "1.0.0-alpha.
|
|
33
|
+
"@reventlessdev/reventless-ppx": "1.0.0-alpha.53"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"rescript": "^12.3.0"
|