@poleski/quality-tools 0.1.4 → 0.2.1
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 +12 -0
- package/README.md +38 -0
- package/dist/cli/main.js +819 -50
- package/dist/cli/templates/playwright-acceptance-runtime.ts.template +170 -0
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @poleski/quality-tools
|
|
2
2
|
|
|
3
|
+
## 0.2.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- c3e322b: Add acceptance pipeline commands for JSON IR parsing, advisory DRY reports, and thin split Playwright entrypoints.
|
|
8
|
+
|
|
9
|
+
## 0.2.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 5bab67a: Add an acceptance spec compiler that turns Gherkin-ish Markdown into Playwright tests.
|
|
14
|
+
|
|
3
15
|
## 0.1.4
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -24,6 +24,7 @@ pnpm add -D link:/absolute/path/to/quality-tools
|
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
26
|
pnpm exec quality-tools organize .
|
|
27
|
+
pnpm exec quality-tools acceptance compile "tests/acceptance/specs/**/*.feature" "tests/playwright/generated" --steps "tests/acceptance/steps.ts" --ir "build/acceptance/ir" --dry "build/acceptance/dry"
|
|
27
28
|
pnpm exec quality-tools boundaries . --strict
|
|
28
29
|
pnpm exec quality-tools reachability . --strict
|
|
29
30
|
pnpm exec quality-tools scrap ./tests
|
|
@@ -39,6 +40,40 @@ hardcoded folder names. The starter config uses `src` as a conventional default,
|
|
|
39
40
|
but the tools scope from the target path plus your configured include/exclude
|
|
40
41
|
globs.
|
|
41
42
|
|
|
43
|
+
## Acceptance
|
|
44
|
+
|
|
45
|
+
The acceptance tool follows a small parser -> IR -> DRY check -> entrypoint
|
|
46
|
+
generator pipeline:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pnpm exec quality-tools acceptance parse features/example.feature build/acceptance/ir/example.json
|
|
50
|
+
pnpm exec quality-tools acceptance dry-check build/acceptance/ir/example.json build/acceptance/dry/example.json
|
|
51
|
+
pnpm exec quality-tools acceptance generate build/acceptance/ir/example.json acceptance/generated/example.spec.ts --steps acceptance/steps.ts
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
For host projects with many specs, `compile` loops the same pipeline over a
|
|
55
|
+
glob, writes one JSON IR file per source spec, optionally writes advisory DRY
|
|
56
|
+
reports, and creates thin Playwright entrypoints that load the IR at runtime:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
pnpm exec quality-tools acceptance compile "tests/acceptance/specs/**/*.feature" "tests/playwright/generated" --steps "tests/acceptance/steps.ts" --ir "build/acceptance/ir" --dry "build/acceptance/dry"
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
The generated Playwright files delegate all behavior to the host step registry.
|
|
63
|
+
DRY reports are advisory; they do not rewrite the source specs, IR, generated
|
|
64
|
+
tests, or host bindings.
|
|
65
|
+
|
|
66
|
+
The checker treats exact duplicate assertions as actionable only when no setup
|
|
67
|
+
or action step occurs between the repeated assertions. This keeps restoration
|
|
68
|
+
checks such as toggling a graph-scope filter off and back on out of the major
|
|
69
|
+
cleanup path while still flagging accidental duplicate lines.
|
|
70
|
+
|
|
71
|
+
Scenario Outline examples may include a `case`, `name`, `title`, or `example`
|
|
72
|
+
column to control the generated Playwright case suffix. Prefer `case` as the
|
|
73
|
+
first column when the remaining example values are detailed test data; this
|
|
74
|
+
keeps generated test names readable while preserving the full row in the runtime
|
|
75
|
+
example payload.
|
|
76
|
+
|
|
42
77
|
## Reports
|
|
43
78
|
|
|
44
79
|
All quality-tool artifacts use one report root:
|
|
@@ -244,12 +279,15 @@ root, then falls back to the bundled base config.
|
|
|
244
279
|
## Other Tools
|
|
245
280
|
|
|
246
281
|
```bash
|
|
282
|
+
pnpm exec quality-tools acceptance compile "tests/acceptance/specs/**/*.feature" "tests/playwright/generated" --steps "tests/acceptance/steps.ts" --ir "build/acceptance/ir" --dry "build/acceptance/dry"
|
|
247
283
|
pnpm exec quality-tools organize ./src
|
|
248
284
|
pnpm exec quality-tools boundaries parser --strict
|
|
249
285
|
pnpm exec quality-tools reachability parser --strict
|
|
250
286
|
pnpm exec quality-tools scrap ./tests --strict
|
|
251
287
|
```
|
|
252
288
|
|
|
289
|
+
- `acceptance` compiles human-authored Gherkin `.feature` specs into
|
|
290
|
+
executable Playwright specs that import host-owned step bindings.
|
|
253
291
|
- `organize` checks directory size, depth, naming, barrels, and cohesion. Use
|
|
254
292
|
`--write-baseline` and `--compare <path>` for baseline workflows.
|
|
255
293
|
- `boundaries` checks configured layers, entrypoints, dead surfaces, and dead
|