@futdevpro/dynamo-e2e 1.10.0 → 1.11.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.
- package/CHANGELOG.md +18 -0
- package/README.md +2 -2
- package/bin/dye2e.js +25 -0
- package/build/_modules/cwv/_collections/cwv-comparison.util.d.ts +48 -0
- package/build/_modules/cwv/_collections/cwv-comparison.util.d.ts.map +1 -0
- package/build/_modules/cwv/_collections/cwv-comparison.util.js +59 -0
- package/build/_modules/cwv/_collections/cwv-comparison.util.js.map +1 -0
- package/build/_modules/cwv/cwv-comparison.spec.d.ts +2 -0
- package/build/_modules/cwv/cwv-comparison.spec.d.ts.map +1 -0
- package/build/_modules/cwv/cwv-comparison.spec.js +77 -0
- package/build/_modules/cwv/cwv-comparison.spec.js.map +1 -0
- package/build/_modules/cwv/index.d.ts +1 -0
- package/build/_modules/cwv/index.d.ts.map +1 -1
- package/build/_modules/cwv/index.js +1 -0
- package/build/_modules/cwv/index.js.map +1 -1
- package/build/_modules/generators/_collections/cli-runner.util.d.ts +5 -0
- package/build/_modules/generators/_collections/cli-runner.util.d.ts.map +1 -1
- package/build/_modules/generators/_collections/cli-runner.util.js +66 -0
- package/build/_modules/generators/_collections/cli-runner.util.js.map +1 -1
- package/build/_modules/generators/bootstrap.spec.d.ts +2 -0
- package/build/_modules/generators/bootstrap.spec.d.ts.map +1 -0
- package/build/_modules/generators/bootstrap.spec.js +38 -0
- package/build/_modules/generators/bootstrap.spec.js.map +1 -0
- package/coverage/contracts/_collections/index.html +1 -1
- package/coverage/contracts/_collections/index.ts.html +1 -1
- package/coverage/contracts/_collections/utils/index.html +1 -1
- package/coverage/contracts/_collections/utils/test-id.util.ts.html +1 -1
- package/coverage/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
- package/coverage/contracts/_enums/field-test-case-type.enum.ts.html +1 -1
- package/coverage/contracts/_enums/index.html +1 -1
- package/coverage/contracts/_enums/index.ts.html +1 -1
- package/coverage/contracts/_enums/standard-viewport.enum.ts.html +1 -1
- package/coverage/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
- package/coverage/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
- package/coverage/contracts/index.html +1 -1
- package/coverage/contracts/index.ts.html +1 -1
- package/coverage/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
- package/coverage/cwv/_collections/cwv-comparison.util.ts.html +355 -0
- package/coverage/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
- package/coverage/cwv/_collections/cwv-emission.util.ts.html +1 -1
- package/coverage/cwv/_collections/index.html +23 -8
- package/coverage/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
- package/coverage/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
- package/coverage/cwv/cwv-suite.generator.ts.html +1 -1
- package/coverage/cwv/index.html +1 -1
- package/coverage/generators/_collections/cli-runner.util.ts.html +240 -39
- package/coverage/generators/_collections/field-emission.util.ts.html +1 -1
- package/coverage/generators/_collections/form-level-emission.util.ts.html +1 -1
- package/coverage/generators/_collections/index.html +13 -13
- package/coverage/generators/_collections/spec-emission.util.ts.html +1 -1
- package/coverage/generators/_collections/test-case-filter.util.ts.html +1 -1
- package/coverage/generators/_collections/viewport-emission.util.ts.html +1 -1
- package/coverage/generators/form-suite.generator.ts.html +1 -1
- package/coverage/generators/index.html +1 -1
- package/coverage/generators/viewport-suite.generator.ts.html +1 -1
- package/coverage/index.html +26 -26
- package/coverage/lcov-report/contracts/_collections/index.html +1 -1
- package/coverage/lcov-report/contracts/_collections/index.ts.html +1 -1
- package/coverage/lcov-report/contracts/_collections/utils/index.html +1 -1
- package/coverage/lcov-report/contracts/_collections/utils/test-id.util.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/cwv-metric-type.enum.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/field-test-case-type.enum.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/index.html +1 -1
- package/coverage/lcov-report/contracts/_enums/index.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/standard-viewport.enum.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/test-expectation-type.enum.ts.html +1 -1
- package/coverage/lcov-report/contracts/_enums/test-run-mode-type.enum.ts.html +1 -1
- package/coverage/lcov-report/contracts/index.html +1 -1
- package/coverage/lcov-report/contracts/index.ts.html +1 -1
- package/coverage/lcov-report/cwv/_collections/cwv-aggregator.util.ts.html +1 -1
- package/coverage/lcov-report/cwv/_collections/cwv-comparison.util.ts.html +355 -0
- package/coverage/lcov-report/cwv/_collections/cwv-diagnose.util.ts.html +1 -1
- package/coverage/lcov-report/cwv/_collections/cwv-emission.util.ts.html +1 -1
- package/coverage/lcov-report/cwv/_collections/index.html +23 -8
- package/coverage/lcov-report/cwv/_collections/inp-interaction-script.const.ts.html +1 -1
- package/coverage/lcov-report/cwv/_collections/web-vitals-page-script.const.ts.html +1 -1
- package/coverage/lcov-report/cwv/cwv-suite.generator.ts.html +1 -1
- package/coverage/lcov-report/cwv/index.html +1 -1
- package/coverage/lcov-report/generators/_collections/cli-runner.util.ts.html +240 -39
- package/coverage/lcov-report/generators/_collections/field-emission.util.ts.html +1 -1
- package/coverage/lcov-report/generators/_collections/form-level-emission.util.ts.html +1 -1
- package/coverage/lcov-report/generators/_collections/index.html +13 -13
- package/coverage/lcov-report/generators/_collections/spec-emission.util.ts.html +1 -1
- package/coverage/lcov-report/generators/_collections/test-case-filter.util.ts.html +1 -1
- package/coverage/lcov-report/generators/_collections/viewport-emission.util.ts.html +1 -1
- package/coverage/lcov-report/generators/form-suite.generator.ts.html +1 -1
- package/coverage/lcov-report/generators/index.html +1 -1
- package/coverage/lcov-report/generators/viewport-suite.generator.ts.html +1 -1
- package/coverage/lcov-report/index.html +26 -26
- package/coverage/lcov-report/runtime/_collections/assertion-helpers.util.ts.html +1 -1
- package/coverage/lcov-report/runtime/_collections/index.html +1 -1
- package/coverage/lcov-report/runtime/_collections/unique-generator.util.ts.html +1 -1
- package/coverage/lcov-report/runtime/_collections/wait-helpers.util.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/dialog-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/field-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/form-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/index.html +1 -1
- package/coverage/lcov-report/runtime/_services/loader-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/logger.service.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/login-flow-helper.base.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/nav-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/toast-page-object.ts.html +1 -1
- package/coverage/lcov-report/runtime/_services/wave-2b-page-objects.ts.html +1 -1
- package/coverage/lcov-report/runtime/index.html +1 -1
- package/coverage/lcov-report/runtime/index.ts.html +1 -1
- package/coverage/lcov.info +335 -136
- package/coverage/runtime/_collections/assertion-helpers.util.ts.html +1 -1
- package/coverage/runtime/_collections/index.html +1 -1
- package/coverage/runtime/_collections/unique-generator.util.ts.html +1 -1
- package/coverage/runtime/_collections/wait-helpers.util.ts.html +1 -1
- package/coverage/runtime/_services/dialog-page-object.ts.html +1 -1
- package/coverage/runtime/_services/field-page-object.ts.html +1 -1
- package/coverage/runtime/_services/form-page-object.ts.html +1 -1
- package/coverage/runtime/_services/index.html +1 -1
- package/coverage/runtime/_services/loader-page-object.ts.html +1 -1
- package/coverage/runtime/_services/logger.service.ts.html +1 -1
- package/coverage/runtime/_services/login-flow-helper.base.ts.html +1 -1
- package/coverage/runtime/_services/nav-page-object.ts.html +1 -1
- package/coverage/runtime/_services/toast-page-object.ts.html +1 -1
- package/coverage/runtime/_services/wave-2b-page-objects.ts.html +1 -1
- package/coverage/runtime/index.html +1 -1
- package/coverage/runtime/index.ts.html +1 -1
- package/coverage/tmp/coverage-221932-1781072712070-0.json +1 -0
- package/coverage/tmp/{coverage-224932-1781071393426-0.json → coverage-224696-1781072711012-0.json} +1 -1
- package/package.json +1 -1
- package/coverage/tmp/coverage-226960-1781071394780-0.json +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,24 @@
|
|
|
3
3
|
Minden release a `dynamo-e2e-foundation` HYPERPLAN MP-N ütemezést követi.
|
|
4
4
|
Verzióformátum: `MM.mm.p` (két-számjegyes major-minor, Dynamo-konvenció).
|
|
5
5
|
|
|
6
|
+
## [01.11.0] — 2026-06-10
|
|
7
|
+
|
|
8
|
+
### Added (CWV comparison + dye2e bootstrap)
|
|
9
|
+
- `DyE2E_CWVComparison_Util` (`cwv/_collections/cwv-comparison.util.ts`):
|
|
10
|
+
- `compareReports(old, new, tolerance?)` — két CWV JSON-report összevet,
|
|
11
|
+
p75 deltával, status: improved/regressed/stable
|
|
12
|
+
- `regressionsOnly()` — szűr csak a regressziókra
|
|
13
|
+
- `formatMarkdownTable()` — markdown-tablázat 🟢🔴⚪ icon-okkal
|
|
14
|
+
- **`dye2e bootstrap`** CLI parancs:
|
|
15
|
+
- `pwd` + `force` flag
|
|
16
|
+
- 5 fájl scaffold: `playwright.config.ts`, `e2e/generate.ts`,
|
|
17
|
+
`e2e/tests/.gitkeep`, `e2e/tests/generated/.gitkeep`, `e2e/README.md`
|
|
18
|
+
- `DyE2E_CliRunner_Util.bootstrapFiles()` testable factory
|
|
19
|
+
|
|
20
|
+
### Test
|
|
21
|
+
- 198/0 Jasmine zöld (183 előbb + 10 CWV comparison + 5 bootstrap)
|
|
22
|
+
- Coverage: 98.32% / 86.28% / 97.45% / 98.32%
|
|
23
|
+
|
|
6
24
|
## [01.10.0] — 2026-06-10
|
|
7
25
|
|
|
8
26
|
### Added (Wave-3 attribution diagnose + `dye2e doctor` CLI)
|
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @futdevpro/dynamo-e2e
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/@futdevpro/dynamo-e2e)
|
|
4
|
-
[](./coverage/)
|
|
5
|
+
[](./src/)
|
|
6
6
|
[](./__documentations/plans/dynamo-e2e-foundation/HYPERPLAN.md)
|
|
7
7
|
|
|
8
8
|
End-to-end testing engine for the Dynamo + FDP ecosystem.
|
package/bin/dye2e.js
CHANGED
|
@@ -25,6 +25,31 @@ function main() {
|
|
|
25
25
|
process.exit(0);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
if (parsed.command === 'bootstrap') {
|
|
29
|
+
const projectRoot = parsed.flags.pwd ? path.resolve(parsed.flags.pwd) : process.cwd();
|
|
30
|
+
const force = parsed.flags.force === 'true';
|
|
31
|
+
const files = DyE2E_CliRunner_Util.bootstrapFiles();
|
|
32
|
+
let written = 0;
|
|
33
|
+
let skipped = 0;
|
|
34
|
+
process.stdout.write('dye2e bootstrap — scaffolding into ' + projectRoot + '\n\n');
|
|
35
|
+
for (const [relPath, content] of Object.entries(files)) {
|
|
36
|
+
const absPath = path.resolve(projectRoot, relPath);
|
|
37
|
+
if (fs.existsSync(absPath) && !force) {
|
|
38
|
+
process.stdout.write(' [SKIP] ' + relPath + ' (exists)\n');
|
|
39
|
+
skipped++;
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
fs.mkdirSync(path.dirname(absPath), { recursive: true });
|
|
43
|
+
fs.writeFileSync(absPath, content, 'utf-8');
|
|
44
|
+
process.stdout.write(' [WRITE] ' + relPath + '\n');
|
|
45
|
+
written++;
|
|
46
|
+
}
|
|
47
|
+
process.stdout.write('\n done — ' + written + ' written, ' + skipped + ' skipped\n');
|
|
48
|
+
process.stdout.write('\n next: pnpm add -D @futdevpro/dynamo-e2e @playwright/test\n');
|
|
49
|
+
process.stdout.write(' then: node e2e/generate.ts && npx playwright test\n');
|
|
50
|
+
process.exit(0);
|
|
51
|
+
}
|
|
52
|
+
|
|
28
53
|
if (parsed.command === 'doctor') {
|
|
29
54
|
const projectRoot = parsed.flags.pwd ? path.resolve(parsed.flags.pwd) : process.cwd();
|
|
30
55
|
const report = DyE2E_CliRunner_Util.doctorReport(projectRoot, fs);
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { DyE2E_CWVMetric_Type } from '../../contracts/_enums/cwv-metric-type.enum';
|
|
2
|
+
/**
|
|
3
|
+
* MP-05/Wave-3 — CWV report comparison util.
|
|
4
|
+
*
|
|
5
|
+
* Két JSON-report-ot összevet (régi vs új) és visszaadja a regressziókat.
|
|
6
|
+
* Tipikus use-case: nightly CICD vs előző-stable, vagy PR-build vs main.
|
|
7
|
+
*/
|
|
8
|
+
export interface DyE2E_CWVComparison_Summary {
|
|
9
|
+
metric: DyE2E_CWVMetric_Type;
|
|
10
|
+
oldP75: number;
|
|
11
|
+
newP75: number;
|
|
12
|
+
/** Delta = newP75 − oldP75. Pozitív = romlás (LCP/CLS/INP/TTFB/FCP-nél). */
|
|
13
|
+
delta: number;
|
|
14
|
+
/** Százalékos változás. */
|
|
15
|
+
deltaPercent: number;
|
|
16
|
+
/** "improved" | "regressed" | "stable". */
|
|
17
|
+
status: 'improved' | 'regressed' | 'stable';
|
|
18
|
+
}
|
|
19
|
+
export interface DyE2E_CWVReport_Shape {
|
|
20
|
+
route?: string;
|
|
21
|
+
summary?: Record<string, {
|
|
22
|
+
p75?: number;
|
|
23
|
+
n?: number;
|
|
24
|
+
}>;
|
|
25
|
+
raw?: Array<{
|
|
26
|
+
metric?: string;
|
|
27
|
+
value?: number;
|
|
28
|
+
iter?: number;
|
|
29
|
+
}>;
|
|
30
|
+
[extra: string]: unknown;
|
|
31
|
+
}
|
|
32
|
+
export declare class DyE2E_CWVComparison_Util {
|
|
33
|
+
/** Delta-tűrés (% alatti változás "stable"-nek számít). Default 5%. */
|
|
34
|
+
static defaultStableTolerancePercent: number;
|
|
35
|
+
/**
|
|
36
|
+
* Összevet két CWV-JSON-report-ot.
|
|
37
|
+
*
|
|
38
|
+
* @param oldReport — előző (baseline) report
|
|
39
|
+
* @param newReport — új (current) report
|
|
40
|
+
* @param tolerance — % alatti változás "stable". Default `defaultStableTolerancePercent`.
|
|
41
|
+
*/
|
|
42
|
+
static compareReports(oldReport: DyE2E_CWVReport_Shape, newReport: DyE2E_CWVReport_Shape, tolerance?: number): DyE2E_CWVComparison_Summary[];
|
|
43
|
+
/** Csak a regresszióknak a leírása (kiemelve). */
|
|
44
|
+
static regressionsOnly(comparisons: DyE2E_CWVComparison_Summary[]): DyE2E_CWVComparison_Summary[];
|
|
45
|
+
/** Ember-olvasható összegzés markdown-tablázatra. */
|
|
46
|
+
static formatMarkdownTable(comparisons: DyE2E_CWVComparison_Summary[]): string;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=cwv-comparison.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cwv-comparison.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/cwv/_collections/cwv-comparison.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF;;;;;GAKG;AAEH,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;CAC7C;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,GAAG,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,qBAAa,wBAAwB;IAEnC,uEAAuE;IACvE,MAAM,CAAC,6BAA6B,EAAE,MAAM,CAAK;IAEjD;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CACnB,SAAS,EAAE,qBAAqB,EAChC,SAAS,EAAE,qBAAqB,EAChC,SAAS,GAAE,MAA+D,GACzE,2BAA2B,EAAE;IA0BhC,kDAAkD;IAClD,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,2BAA2B,EAAE,GAAG,2BAA2B,EAAE;IAIjG,qDAAqD;IACrD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,2BAA2B,EAAE,GAAG,MAAM;CAa/E"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyE2E_CWVComparison_Util = void 0;
|
|
4
|
+
const cwv_metric_type_enum_1 = require("../../contracts/_enums/cwv-metric-type.enum");
|
|
5
|
+
class DyE2E_CWVComparison_Util {
|
|
6
|
+
/** Delta-tűrés (% alatti változás "stable"-nek számít). Default 5%. */
|
|
7
|
+
static defaultStableTolerancePercent = 5;
|
|
8
|
+
/**
|
|
9
|
+
* Összevet két CWV-JSON-report-ot.
|
|
10
|
+
*
|
|
11
|
+
* @param oldReport — előző (baseline) report
|
|
12
|
+
* @param newReport — új (current) report
|
|
13
|
+
* @param tolerance — % alatti változás "stable". Default `defaultStableTolerancePercent`.
|
|
14
|
+
*/
|
|
15
|
+
static compareReports(oldReport, newReport, tolerance = DyE2E_CWVComparison_Util.defaultStableTolerancePercent) {
|
|
16
|
+
const metrics = [
|
|
17
|
+
cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.lcp,
|
|
18
|
+
cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.cls,
|
|
19
|
+
cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.inp,
|
|
20
|
+
cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.ttfb,
|
|
21
|
+
cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.fcp,
|
|
22
|
+
];
|
|
23
|
+
const result = [];
|
|
24
|
+
for (const metric of metrics) {
|
|
25
|
+
const oldP75 = oldReport.summary?.[metric]?.p75 ?? NaN;
|
|
26
|
+
const newP75 = newReport.summary?.[metric]?.p75 ?? NaN;
|
|
27
|
+
if (!isFinite(oldP75) || !isFinite(newP75)) {
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
const delta = newP75 - oldP75;
|
|
31
|
+
const deltaPercent = oldP75 > 0 ? (delta / oldP75) * 100 : 0;
|
|
32
|
+
const status = Math.abs(deltaPercent) <= tolerance ? 'stable' :
|
|
33
|
+
delta < 0 ? 'improved' :
|
|
34
|
+
'regressed';
|
|
35
|
+
result.push({ metric, oldP75, newP75, delta, deltaPercent, status });
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
39
|
+
/** Csak a regresszióknak a leírása (kiemelve). */
|
|
40
|
+
static regressionsOnly(comparisons) {
|
|
41
|
+
return comparisons.filter((c) => c.status === 'regressed');
|
|
42
|
+
}
|
|
43
|
+
/** Ember-olvasható összegzés markdown-tablázatra. */
|
|
44
|
+
static formatMarkdownTable(comparisons) {
|
|
45
|
+
if (comparisons.length === 0) {
|
|
46
|
+
return '_No comparable metrics._';
|
|
47
|
+
}
|
|
48
|
+
const header = '| Metric | Old p75 | New p75 | Delta | Δ% | Status |\n|---|---|---|---|---|---|';
|
|
49
|
+
const rows = comparisons.map((c) => {
|
|
50
|
+
const unit = c.metric === cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.cls ? '' : 'ms';
|
|
51
|
+
const icon = c.status === 'improved' ? '🟢' :
|
|
52
|
+
c.status === 'regressed' ? '🔴' : '⚪';
|
|
53
|
+
return `| ${c.metric.toUpperCase()} | ${c.oldP75.toFixed(2)}${unit} | ${c.newP75.toFixed(2)}${unit} | ${c.delta.toFixed(2)}${unit} | ${c.deltaPercent.toFixed(1)}% | ${icon} ${c.status} |`;
|
|
54
|
+
});
|
|
55
|
+
return `${header}\n${rows.join('\n')}`;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.DyE2E_CWVComparison_Util = DyE2E_CWVComparison_Util;
|
|
59
|
+
//# sourceMappingURL=cwv-comparison.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cwv-comparison.util.js","sourceRoot":"","sources":["../../../../src/_modules/cwv/_collections/cwv-comparison.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cwv-comparison.spec.d.ts","sourceRoot":"","sources":["../../../src/_modules/cwv/cwv-comparison.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const cwv_metric_type_enum_1 = require("../contracts/_enums/cwv-metric-type.enum");
|
|
4
|
+
const cwv_comparison_util_1 = require("./_collections/cwv-comparison.util");
|
|
5
|
+
describe('| dynamo-e2e | CWV Comparison Util (Wave-3)', () => {
|
|
6
|
+
it('| ures report-ok → [] (nincs metric)', () => {
|
|
7
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports({}, {});
|
|
8
|
+
expect(result.length).toBe(0);
|
|
9
|
+
});
|
|
10
|
+
it('| stable: ±5% alatti változás', () => {
|
|
11
|
+
const oldR = { summary: { lcp: { p75: 2000 } } };
|
|
12
|
+
const newR = { summary: { lcp: { p75: 2080 } } };
|
|
13
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
14
|
+
expect(result[0].status).toBe('stable');
|
|
15
|
+
});
|
|
16
|
+
it('| improved: >5% csökkenés', () => {
|
|
17
|
+
const oldR = { summary: { lcp: { p75: 2000 } } };
|
|
18
|
+
const newR = { summary: { lcp: { p75: 1500 } } };
|
|
19
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
20
|
+
expect(result[0].status).toBe('improved');
|
|
21
|
+
expect(result[0].delta).toBe(-500);
|
|
22
|
+
});
|
|
23
|
+
it('| regressed: >5% növekedés', () => {
|
|
24
|
+
const oldR = { summary: { lcp: { p75: 2000 } } };
|
|
25
|
+
const newR = { summary: { lcp: { p75: 3000 } } };
|
|
26
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
27
|
+
expect(result[0].status).toBe('regressed');
|
|
28
|
+
expect(result[0].deltaPercent).toBe(50);
|
|
29
|
+
});
|
|
30
|
+
it('| custom tolerance — 1% strict mode', () => {
|
|
31
|
+
const oldR = { summary: { lcp: { p75: 2000 } } };
|
|
32
|
+
const newR = { summary: { lcp: { p75: 2050 } } };
|
|
33
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR, 1);
|
|
34
|
+
expect(result[0].status).toBe('regressed');
|
|
35
|
+
});
|
|
36
|
+
it('| több metric egyszerre', () => {
|
|
37
|
+
const oldR = { summary: { lcp: { p75: 2000 }, cls: { p75: 0.05 }, inp: { p75: 150 } } };
|
|
38
|
+
const newR = { summary: { lcp: { p75: 2100 }, cls: { p75: 0.20 }, inp: { p75: 100 } } };
|
|
39
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
40
|
+
expect(result.length).toBe(3);
|
|
41
|
+
const lcp = result.find(r => r.metric === cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.lcp);
|
|
42
|
+
const cls = result.find(r => r.metric === cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.cls);
|
|
43
|
+
const inp = result.find(r => r.metric === cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.inp);
|
|
44
|
+
expect(lcp?.status).toBe('stable');
|
|
45
|
+
expect(cls?.status).toBe('regressed');
|
|
46
|
+
expect(inp?.status).toBe('improved');
|
|
47
|
+
});
|
|
48
|
+
it('| regressionsOnly — szűr', () => {
|
|
49
|
+
const oldR = { summary: { lcp: { p75: 2000 }, cls: { p75: 0.05 } } };
|
|
50
|
+
const newR = { summary: { lcp: { p75: 3000 }, cls: { p75: 0.05 } } };
|
|
51
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
52
|
+
const regressions = cwv_comparison_util_1.DyE2E_CWVComparison_Util.regressionsOnly(result);
|
|
53
|
+
expect(regressions.length).toBe(1);
|
|
54
|
+
expect(regressions[0].metric).toBe(cwv_metric_type_enum_1.DyE2E_CWVMetric_Type.lcp);
|
|
55
|
+
});
|
|
56
|
+
it('| formatMarkdownTable — header + row markdown', () => {
|
|
57
|
+
const oldR = { summary: { lcp: { p75: 2000 } } };
|
|
58
|
+
const newR = { summary: { lcp: { p75: 3000 } } };
|
|
59
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
60
|
+
const md = cwv_comparison_util_1.DyE2E_CWVComparison_Util.formatMarkdownTable(result);
|
|
61
|
+
expect(md).toContain('| Metric | Old p75 | New p75 | Delta | Δ% | Status |');
|
|
62
|
+
expect(md).toContain('LCP');
|
|
63
|
+
expect(md).toContain('🔴');
|
|
64
|
+
expect(md).toContain('regressed');
|
|
65
|
+
});
|
|
66
|
+
it('| formatMarkdownTable — üres → "_No comparable metrics._"', () => {
|
|
67
|
+
const md = cwv_comparison_util_1.DyE2E_CWVComparison_Util.formatMarkdownTable([]);
|
|
68
|
+
expect(md).toBe('_No comparable metrics._');
|
|
69
|
+
});
|
|
70
|
+
it('| NaN p75 → metric kihagyva', () => {
|
|
71
|
+
const oldR = { summary: { lcp: { p75: 2000 }, cls: {} } };
|
|
72
|
+
const newR = { summary: { lcp: { p75: 2100 }, cls: { p75: 0.1 } } };
|
|
73
|
+
const result = cwv_comparison_util_1.DyE2E_CWVComparison_Util.compareReports(oldR, newR);
|
|
74
|
+
expect(result.length).toBe(1); // csak lcp, mert cls.oldP75 NaN
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=cwv-comparison.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cwv-comparison.spec.js","sourceRoot":"","sources":["../../../src/_modules/cwv/cwv-comparison.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* `@futdevpro/dynamo-e2e/cwv` — Core Web Vitals diagnostics (Wave-3).
|
|
3
3
|
*/
|
|
4
4
|
export * from './_collections/cwv-aggregator.util';
|
|
5
|
+
export * from './_collections/cwv-comparison.util';
|
|
5
6
|
export * from './_collections/cwv-diagnose.util';
|
|
6
7
|
export * from './_collections/cwv-emission.util';
|
|
7
8
|
export * from './_collections/inp-interaction-script.const';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/cwv/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAEtC,eAAO,MAAM,iBAAiB,EAAE,MAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/cwv/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAEtC,eAAO,MAAM,iBAAiB,EAAE,MAAuB,CAAC"}
|
|
@@ -19,6 +19,7 @@ exports.DYE2E_CWV_VERSION = void 0;
|
|
|
19
19
|
* `@futdevpro/dynamo-e2e/cwv` — Core Web Vitals diagnostics (Wave-3).
|
|
20
20
|
*/
|
|
21
21
|
__exportStar(require("./_collections/cwv-aggregator.util"), exports);
|
|
22
|
+
__exportStar(require("./_collections/cwv-comparison.util"), exports);
|
|
22
23
|
__exportStar(require("./_collections/cwv-diagnose.util"), exports);
|
|
23
24
|
__exportStar(require("./_collections/cwv-emission.util"), exports);
|
|
24
25
|
__exportStar(require("./_collections/inp-interaction-script.const"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/cwv/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,qEAAmD;AACnD,mEAAiD;AACjD,mEAAiD;AACjD,8EAA4D;AAC5D,8EAA4D;AAC5D,kDAAgC;AAChC,wDAAsC;AAEzB,QAAA,iBAAiB,GAAW,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/cwv/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,qEAAmD;AACnD,qEAAmD;AACnD,mEAAiD;AACjD,mEAAiD;AACjD,8EAA4D;AAC5D,8EAA4D;AAC5D,kDAAgC;AAChC,wDAAsC;AAEzB,QAAA,iBAAiB,GAAW,cAAc,CAAC"}
|
|
@@ -10,6 +10,11 @@ export declare class DyE2E_CliRunner_Util {
|
|
|
10
10
|
flags: Record<string, string>;
|
|
11
11
|
};
|
|
12
12
|
static helpText(): string;
|
|
13
|
+
/**
|
|
14
|
+
* Bootstrap scaffold — visszaadja a generálandó fájlok mappáját
|
|
15
|
+
* ({ path → content }), a CLI ezeket beírja.
|
|
16
|
+
*/
|
|
17
|
+
static bootstrapFiles(): Record<string, string>;
|
|
13
18
|
/**
|
|
14
19
|
* Doctor parancs — projekt-config-validáció.
|
|
15
20
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-runner.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAsBpF,MAAM,CAAC,QAAQ,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"cli-runner.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAsBpF,MAAM,CAAC,QAAQ,IAAI,MAAM;IAuCzB;;;OAGG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA0D/C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QAAE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;KAAE,GAAG;QAC9H,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,mBAAmB,EAAE,OAAO,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IA2CD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;;OAGG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,EAChF,UAAU,EAAE,MAAM,GACjB,MAAM;CAaV"}
|
|
@@ -44,6 +44,7 @@ Commands:
|
|
|
44
44
|
generate-viewport-audit Route-list → 7 viewport × theme spec.ts
|
|
45
45
|
generate-cwv-diag Route-list → CWV synthetic measurement spec.ts
|
|
46
46
|
doctor Diagnose project config (config-files, deps, conventions)
|
|
47
|
+
bootstrap Scaffold playwright.config.ts + e2e/ + generate.ts
|
|
47
48
|
version Print package version
|
|
48
49
|
help This message
|
|
49
50
|
|
|
@@ -64,8 +65,73 @@ Flags (generate-cwv-diag):
|
|
|
64
65
|
|
|
65
66
|
Flags (doctor):
|
|
66
67
|
--pwd <path> Project root (default: cwd)
|
|
68
|
+
|
|
69
|
+
Flags (bootstrap):
|
|
70
|
+
--pwd <path> Project root (default: cwd)
|
|
71
|
+
--force Overwrite existing files
|
|
67
72
|
`;
|
|
68
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Bootstrap scaffold — visszaadja a generálandó fájlok mappáját
|
|
76
|
+
* ({ path → content }), a CLI ezeket beírja.
|
|
77
|
+
*/
|
|
78
|
+
static bootstrapFiles() {
|
|
79
|
+
return {
|
|
80
|
+
'playwright.config.ts': `import { defineConfig, devices } from '@playwright/test';
|
|
81
|
+
|
|
82
|
+
export default defineConfig({
|
|
83
|
+
testDir: './e2e/tests',
|
|
84
|
+
fullyParallel: true,
|
|
85
|
+
retries: 0,
|
|
86
|
+
reporter: [['html'], ['list']],
|
|
87
|
+
use: {
|
|
88
|
+
baseURL: process.env.E2E_BASE_URL || 'http://localhost:4200',
|
|
89
|
+
ignoreHTTPSErrors: process.env.E2E_IGNORE_HTTPS_ERRORS === '1',
|
|
90
|
+
trace: 'retain-on-failure',
|
|
91
|
+
},
|
|
92
|
+
projects: [{ name: 'chromium', use: { ...devices['Desktop Chrome'] } }],
|
|
93
|
+
});
|
|
94
|
+
`,
|
|
95
|
+
'e2e/generate.ts': `import { DyE2E_FormSuite_Generator } from '@futdevpro/dynamo-e2e/generators';
|
|
96
|
+
import * as fs from 'fs';
|
|
97
|
+
import * as path from 'path';
|
|
98
|
+
|
|
99
|
+
const OUT_DIR: string = path.join(__dirname, 'tests/generated');
|
|
100
|
+
fs.mkdirSync(OUT_DIR, { recursive: true });
|
|
101
|
+
|
|
102
|
+
// Példa: 1 mintaform — bővítsd a saját Settings POJO-iddal
|
|
103
|
+
const exampleConfig = {
|
|
104
|
+
formSettings: {
|
|
105
|
+
key: 'login',
|
|
106
|
+
fields: [
|
|
107
|
+
{ key: 'email', type: 'text', required: true, maxLength: 254 },
|
|
108
|
+
{ key: 'password', type: 'password', required: true, minLength: 8 },
|
|
109
|
+
],
|
|
110
|
+
},
|
|
111
|
+
formRoute: '/login',
|
|
112
|
+
formSelector: 'dynamo-form-new',
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
const spec = DyE2E_FormSuite_Generator.emit(exampleConfig);
|
|
116
|
+
fs.writeFileSync(path.join(OUT_DIR, 'login.spec.ts'), spec);
|
|
117
|
+
console.log('[generate] wrote', fs.readdirSync(OUT_DIR).length, 'spec files');
|
|
118
|
+
`,
|
|
119
|
+
'e2e/tests/.gitkeep': '',
|
|
120
|
+
'e2e/tests/generated/.gitkeep': '',
|
|
121
|
+
'e2e/README.md': `# E2E tests (dynamo-e2e)
|
|
122
|
+
|
|
123
|
+
\`\`\`bash
|
|
124
|
+
# Generate
|
|
125
|
+
node e2e/generate.ts
|
|
126
|
+
|
|
127
|
+
# Run
|
|
128
|
+
npx playwright test
|
|
129
|
+
\`\`\`
|
|
130
|
+
|
|
131
|
+
See: https://github.com/futdevpro/dynamo-e2e/blob/master/__documentations/getting-started.md
|
|
132
|
+
`,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
69
135
|
/**
|
|
70
136
|
* Doctor parancs — projekt-config-validáció.
|
|
71
137
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-runner.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":";;;AAAA,kEAAoE;AACpE,0EAA4E;AAC5E,uEAAyE;AAKzE;;;;;GAKG;AACH,MAAa,oBAAoB;IAE/B,MAAM,CAAC,SAAS,CAAC,IAAc;QAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,OAAO,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAW,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAuB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;oBAClB,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,QAAQ;QACb,OAAO
|
|
1
|
+
{"version":3,"file":"cli-runner.util.js","sourceRoot":"","sources":["../../../../src/_modules/generators/_collections/cli-runner.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.spec.d.ts","sourceRoot":"","sources":["../../../src/_modules/generators/bootstrap.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const cli_runner_util_1 = require("./_collections/cli-runner.util");
|
|
4
|
+
describe('| dynamo-e2e | CLI bootstrap', () => {
|
|
5
|
+
it('| bootstrapFiles — visszaad 5 fájlt', () => {
|
|
6
|
+
const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
|
|
7
|
+
expect(Object.keys(files).length).toBeGreaterThanOrEqual(5);
|
|
8
|
+
expect(files['playwright.config.ts']).toBeDefined();
|
|
9
|
+
expect(files['e2e/generate.ts']).toBeDefined();
|
|
10
|
+
expect(files['e2e/README.md']).toBeDefined();
|
|
11
|
+
});
|
|
12
|
+
it('| playwright.config.ts — defineConfig + testDir + baseURL', () => {
|
|
13
|
+
const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
|
|
14
|
+
const cfg = files['playwright.config.ts'];
|
|
15
|
+
expect(cfg).toContain('defineConfig');
|
|
16
|
+
expect(cfg).toContain('./e2e/tests');
|
|
17
|
+
expect(cfg).toContain('E2E_BASE_URL');
|
|
18
|
+
expect(cfg).toContain('chromium');
|
|
19
|
+
});
|
|
20
|
+
it('| e2e/generate.ts — DyE2E_FormSuite_Generator import + emit', () => {
|
|
21
|
+
const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
|
|
22
|
+
const gen = files['e2e/generate.ts'];
|
|
23
|
+
expect(gen).toContain(`@futdevpro/dynamo-e2e/generators`);
|
|
24
|
+
expect(gen).toContain('DyE2E_FormSuite_Generator');
|
|
25
|
+
expect(gen).toContain('.emit(');
|
|
26
|
+
});
|
|
27
|
+
it('| .gitkeep files a directory-creation-höz', () => {
|
|
28
|
+
const files = cli_runner_util_1.DyE2E_CliRunner_Util.bootstrapFiles();
|
|
29
|
+
expect(files['e2e/tests/.gitkeep']).toBeDefined();
|
|
30
|
+
expect(files['e2e/tests/generated/.gitkeep']).toBeDefined();
|
|
31
|
+
});
|
|
32
|
+
it('| helpText "bootstrap" parancsot megemlít', () => {
|
|
33
|
+
const help = cli_runner_util_1.DyE2E_CliRunner_Util.helpText();
|
|
34
|
+
expect(help).toContain('bootstrap');
|
|
35
|
+
expect(help).toContain('--force');
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=bootstrap.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.spec.js","sourceRoot":"","sources":["../../../src/_modules/generators/bootstrap.spec.ts"],"names":[],"mappings":";;AAAA,oEAAsE;AAEtE,QAAQ,CAAC,8BAA8B,EAAE,GAAS,EAAE;IAElD,EAAE,CAAC,qCAAqC,EAAE,GAAS,EAAE;QACnD,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAS,EAAE;QACzE,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,GAAG,GAAW,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAS,EAAE;QAC3E,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,GAAG,GAAW,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QACnD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QACzD,MAAM,KAAK,GAAG,sCAAoB,CAAC,cAAc,EAAE,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QACzD,MAAM,IAAI,GAAW,sCAAoB,CAAC,QAAQ,EAAE,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAC"}
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-10T06:
|
|
104
|
+
at 2026-06-10T06:25:12.353Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -82,7 +82,7 @@ export * from './test-case-sets/field-type-registry.const';
|
|
|
82
82
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
83
83
|
Code coverage generated by
|
|
84
84
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
85
|
-
at 2026-06-10T06:
|
|
85
|
+
at 2026-06-10T06:25:12.353Z
|
|
86
86
|
</div>
|
|
87
87
|
<script src="../../prettify.js"></script>
|
|
88
88
|
<script>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-10T06:
|
|
104
|
+
at 2026-06-10T06:25:12.353Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -157,7 +157,7 @@ export class DyE2E_TestId_Util {
|
|
|
157
157
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
158
158
|
Code coverage generated by
|
|
159
159
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
160
|
-
at 2026-06-10T06:
|
|
160
|
+
at 2026-06-10T06:25:12.353Z
|
|
161
161
|
</div>
|
|
162
162
|
<script src="../../../prettify.js"></script>
|
|
163
163
|
<script>
|
|
@@ -130,7 +130,7 @@ export enum DyE2E_CWVMetric_Type {
|
|
|
130
130
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
131
131
|
Code coverage generated by
|
|
132
132
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
133
|
-
at 2026-06-10T06:
|
|
133
|
+
at 2026-06-10T06:25:12.353Z
|
|
134
134
|
</div>
|
|
135
135
|
<script src="../../prettify.js"></script>
|
|
136
136
|
<script>
|
|
@@ -379,7 +379,7 @@ export enum DyE2E_FieldTestCase_Type {
|
|
|
379
379
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
380
380
|
Code coverage generated by
|
|
381
381
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
382
|
-
at 2026-06-10T06:
|
|
382
|
+
at 2026-06-10T06:25:12.353Z
|
|
383
383
|
</div>
|
|
384
384
|
<script src="../../prettify.js"></script>
|
|
385
385
|
<script>
|
|
@@ -176,7 +176,7 @@
|
|
|
176
176
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
177
177
|
Code coverage generated by
|
|
178
178
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
179
|
-
at 2026-06-10T06:
|
|
179
|
+
at 2026-06-10T06:25:12.353Z
|
|
180
180
|
</div>
|
|
181
181
|
<script src="../../prettify.js"></script>
|
|
182
182
|
<script>
|
|
@@ -85,7 +85,7 @@ export * from './test-run-mode-type.enum';
|
|
|
85
85
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
86
86
|
Code coverage generated by
|
|
87
87
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
88
|
-
at 2026-06-10T06:
|
|
88
|
+
at 2026-06-10T06:25:12.353Z
|
|
89
89
|
</div>
|
|
90
90
|
<script src="../../prettify.js"></script>
|
|
91
91
|
<script>
|
|
@@ -112,7 +112,7 @@ export enum DyE2E_StandardViewport_Type {
|
|
|
112
112
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
113
113
|
Code coverage generated by
|
|
114
114
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
115
|
-
at 2026-06-10T06:
|
|
115
|
+
at 2026-06-10T06:25:12.353Z
|
|
116
116
|
</div>
|
|
117
117
|
<script src="../../prettify.js"></script>
|
|
118
118
|
<script>
|
|
@@ -118,7 +118,7 @@ export enum DyE2E_TestExpectation_Type {
|
|
|
118
118
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
119
119
|
Code coverage generated by
|
|
120
120
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
121
|
-
at 2026-06-10T06:
|
|
121
|
+
at 2026-06-10T06:25:12.353Z
|
|
122
122
|
</div>
|
|
123
123
|
<script src="../../prettify.js"></script>
|
|
124
124
|
<script>
|
|
@@ -115,7 +115,7 @@ export enum DyE2E_TestRunMode_Type {
|
|
|
115
115
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
116
116
|
Code coverage generated by
|
|
117
117
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
118
|
-
at 2026-06-10T06:
|
|
118
|
+
at 2026-06-10T06:25:12.353Z
|
|
119
119
|
</div>
|
|
120
120
|
<script src="../../prettify.js"></script>
|
|
121
121
|
<script>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-10T06:
|
|
104
|
+
at 2026-06-10T06:25:12.353Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../prettify.js"></script>
|
|
107
107
|
<script>
|