@elliemae/encw-leak-runner 1.0.3 → 1.0.4
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 +14 -0
- package/README.md +34 -17
- package/dist/.tsbuildinfo +1 -1
- package/dist/bin/leak-runner.js +80 -9
- package/dist/cjs/cli/commands/runCommand.js +7 -2
- package/dist/cjs/config/requiredEnvParams.js +14 -2
- package/dist/cjs/config/runnerConfigLoader.js +6 -3
- package/dist/cjs/config/runnerConfigSchema.js +5 -1
- package/dist/cjs/config/unknownEnvError.js +36 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/runner/scenarioRunner.js +9 -1
- package/dist/cjs/scenarios/one-admin/export-navigation.scenario.js +10 -1
- package/dist/cjs/scenarios/one-admin/page-models/AdminLandingPageModel.js +42 -0
- package/dist/cjs/scenarios/one-admin/page-models/index.js +2 -0
- package/dist/esm/cli/commands/runCommand.js +11 -3
- package/dist/esm/config/requiredEnvParams.js +14 -2
- package/dist/esm/config/runnerConfigLoader.js +6 -3
- package/dist/esm/config/runnerConfigSchema.js +5 -1
- package/dist/esm/config/unknownEnvError.js +16 -0
- package/dist/esm/index.js +3 -1
- package/dist/esm/runner/scenarioRunner.js +9 -1
- package/dist/esm/scenarios/one-admin/export-navigation.scenario.js +11 -1
- package/dist/esm/scenarios/one-admin/page-models/AdminLandingPageModel.js +22 -0
- package/dist/esm/scenarios/one-admin/page-models/index.js +2 -0
- package/dist/types/lib/config/requiredEnvParams.d.ts +4 -1
- package/dist/types/lib/config/runnerConfigLoader.d.ts +1 -0
- package/dist/types/lib/config/runnerConfigSchema.d.ts +7 -0
- package/dist/types/lib/config/unknownEnvError.d.ts +5 -0
- package/dist/types/lib/index.d.ts +1 -1
- package/dist/types/lib/runner/aiEnhancementStep.d.ts +4 -3
- package/dist/types/lib/scenarios/one-admin/page-models/AdminLandingPageModel.d.ts +8 -0
- package/dist/types/lib/scenarios/one-admin/page-models/index.d.ts +1 -0
- package/dist/types/lib/types/scenario.d.ts +1 -0
- package/leak-runner.config.json +18 -0
- package/leak-runner.schema.json +5 -0
- package/lib/cli/commands/runCommand.ts +15 -2
- package/lib/config/requiredEnvParams.ts +15 -2
- package/lib/config/runnerConfigLoader.ts +12 -5
- package/lib/config/runnerConfigSchema.ts +4 -0
- package/lib/config/tests/fileConfigSource.test.ts +26 -0
- package/lib/config/tests/requiredEnvParams.test.ts +90 -2
- package/lib/config/tests/runnerConfigLoader.test.ts +30 -0
- package/lib/config/unknownEnvError.ts +13 -0
- package/lib/index.ts +1 -0
- package/lib/runner/aiEnhancementStep.ts +4 -3
- package/lib/runner/scenarioRunner.ts +8 -1
- package/lib/scenarios/one-admin/export-navigation.scenario.ts +13 -1
- package/lib/scenarios/one-admin/page-models/AdminLandingPageModel.ts +24 -0
- package/lib/scenarios/one-admin/page-models/index.ts +1 -0
- package/lib/types/scenario.ts +1 -0
- package/package.json +3 -3
- package/reports/analysis/index.html +1 -1
- package/reports/analysis/thresholdEvaluator.ts.html +1 -1
- package/reports/browser/iframeHeapProfiler.ts.html +1 -1
- package/reports/browser/index.html +1 -1
- package/reports/cli/commands/index.html +3 -3
- package/reports/cli/commands/listCommand.ts.html +1 -1
- package/reports/cli/commands/runCommand.ts.html +44 -5
- package/reports/cli/index.html +1 -1
- package/reports/cli/index.ts.html +1 -1
- package/reports/config/index.html +36 -21
- package/reports/config/missingRequiredParamError.ts.html +4 -4
- package/reports/config/requiredEnvParams.ts.html +67 -28
- package/reports/config/runnerConfigLoader.ts.html +38 -17
- package/reports/config/runnerConfigSchema.ts.html +18 -6
- package/reports/config/sources/cliOverrideConfigSource.ts.html +1 -1
- package/reports/config/sources/configSource.ts.html +2 -2
- package/reports/config/sources/envVarConfigSource.ts.html +1 -1
- package/reports/config/sources/fileConfigSource.ts.html +13 -13
- package/reports/config/sources/index.html +1 -1
- package/reports/config/unknownEnvError.ts.html +124 -0
- package/reports/index.html +35 -35
- package/reports/lcov-report/analysis/index.html +1 -1
- package/reports/lcov-report/analysis/thresholdEvaluator.ts.html +1 -1
- package/reports/lcov-report/browser/iframeHeapProfiler.ts.html +1 -1
- package/reports/lcov-report/browser/index.html +1 -1
- package/reports/lcov-report/cli/commands/index.html +3 -3
- package/reports/lcov-report/cli/commands/listCommand.ts.html +1 -1
- package/reports/lcov-report/cli/commands/runCommand.ts.html +44 -5
- package/reports/lcov-report/cli/index.html +1 -1
- package/reports/lcov-report/cli/index.ts.html +1 -1
- package/reports/lcov-report/config/index.html +36 -21
- package/reports/lcov-report/config/missingRequiredParamError.ts.html +4 -4
- package/reports/lcov-report/config/requiredEnvParams.ts.html +67 -28
- package/reports/lcov-report/config/runnerConfigLoader.ts.html +38 -17
- package/reports/lcov-report/config/runnerConfigSchema.ts.html +18 -6
- package/reports/lcov-report/config/sources/cliOverrideConfigSource.ts.html +1 -1
- package/reports/lcov-report/config/sources/configSource.ts.html +2 -2
- package/reports/lcov-report/config/sources/envVarConfigSource.ts.html +1 -1
- package/reports/lcov-report/config/sources/fileConfigSource.ts.html +13 -13
- package/reports/lcov-report/config/sources/index.html +1 -1
- package/reports/lcov-report/config/unknownEnvError.ts.html +124 -0
- package/reports/lcov-report/index.html +35 -35
- package/reports/lcov-report/registry/index.html +1 -1
- package/reports/lcov-report/registry/scenarioRegistry.ts.html +1 -1
- package/reports/lcov-report/reporting/consoleReporter.ts.html +1 -1
- package/reports/lcov-report/reporting/index.html +1 -1
- package/reports/lcov-report/reporting/junitReporter.ts.html +1 -1
- package/reports/lcov-report/runner/aiEnhancementStep.ts.html +8 -5
- package/reports/lcov-report/runner/batchRunner.ts.html +1 -1
- package/reports/lcov-report/runner/index.html +15 -15
- package/reports/lcov-report/runner/scenarioRunner.ts.html +32 -11
- package/reports/lcov-report/scenarios/index.html +1 -1
- package/reports/lcov-report/scenarios/index.ts.html +1 -1
- package/reports/lcov-report/scenarios/one-admin/export-navigation.scenario.ts.html +44 -8
- package/reports/lcov-report/scenarios/one-admin/index.html +11 -11
- package/reports/lcov-report/scenarios/one-admin/index.ts.html +1 -1
- package/reports/lcov-report/scenarios/one-admin/page-models/AdminLandingPageModel.ts.html +157 -0
- package/reports/lcov-report/scenarios/one-admin/page-models/ExportPageModel.ts.html +1 -1
- package/reports/lcov-report/scenarios/one-admin/page-models/SelectSettingsPageModel.ts.html +1 -1
- package/reports/lcov-report/scenarios/one-admin/page-models/index.html +19 -4
- package/reports/lcov-report/types/config.ts.html +1 -1
- package/reports/lcov-report/types/index.html +1 -1
- package/reports/lcov.info +302 -230
- package/reports/registry/index.html +1 -1
- package/reports/registry/scenarioRegistry.ts.html +1 -1
- package/reports/reporting/consoleReporter.ts.html +1 -1
- package/reports/reporting/index.html +1 -1
- package/reports/reporting/junitReporter.ts.html +1 -1
- package/reports/runner/aiEnhancementStep.ts.html +8 -5
- package/reports/runner/batchRunner.ts.html +1 -1
- package/reports/runner/index.html +15 -15
- package/reports/runner/scenarioRunner.ts.html +32 -11
- package/reports/scenarios/index.html +1 -1
- package/reports/scenarios/index.ts.html +1 -1
- package/reports/scenarios/one-admin/export-navigation.scenario.ts.html +44 -8
- package/reports/scenarios/one-admin/index.html +11 -11
- package/reports/scenarios/one-admin/index.ts.html +1 -1
- package/reports/scenarios/one-admin/page-models/AdminLandingPageModel.ts.html +157 -0
- package/reports/scenarios/one-admin/page-models/ExportPageModel.ts.html +1 -1
- package/reports/scenarios/one-admin/page-models/SelectSettingsPageModel.ts.html +1 -1
- package/reports/scenarios/one-admin/page-models/index.html +19 -4
- package/reports/types/config.ts.html +1 -1
- package/reports/types/index.html +1 -1
- package/test-report.xml +67 -54
|
@@ -148,7 +148,7 @@ export class ExportPageModel {
|
|
|
148
148
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
149
149
|
Code coverage generated by
|
|
150
150
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
151
|
-
at 2026-05-
|
|
151
|
+
at 2026-05-13T17:06:38.136Z
|
|
152
152
|
</div>
|
|
153
153
|
<script src="../../../prettify.js"></script>
|
|
154
154
|
<script>
|
|
@@ -160,7 +160,7 @@ export class SelectSettingsPageModel {
|
|
|
160
160
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
161
161
|
Code coverage generated by
|
|
162
162
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
163
|
-
at 2026-05-
|
|
163
|
+
at 2026-05-13T17:06:38.136Z
|
|
164
164
|
</div>
|
|
165
165
|
<script src="../../../prettify.js"></script>
|
|
166
166
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/19</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -39,14 +39,14 @@
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/
|
|
42
|
+
<span class='fraction'>0/14</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/19</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -79,6 +79,21 @@
|
|
|
79
79
|
</tr>
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
|
+
<td class="file low" data-value="AdminLandingPageModel.ts"><a href="AdminLandingPageModel.ts.html">AdminLandingPageModel.ts</a></td>
|
|
83
|
+
<td data-value="0" class="pic low">
|
|
84
|
+
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
|
+
</td>
|
|
86
|
+
<td data-value="0" class="pct low">0%</td>
|
|
87
|
+
<td data-value="6" class="abs low">0/6</td>
|
|
88
|
+
<td data-value="100" class="pct high">100%</td>
|
|
89
|
+
<td data-value="0" class="abs high">0/0</td>
|
|
90
|
+
<td data-value="0" class="pct low">0%</td>
|
|
91
|
+
<td data-value="4" class="abs low">0/4</td>
|
|
92
|
+
<td data-value="0" class="pct low">0%</td>
|
|
93
|
+
<td data-value="6" class="abs low">0/6</td>
|
|
94
|
+
</tr>
|
|
95
|
+
|
|
96
|
+
<tr>
|
|
82
97
|
<td class="file low" data-value="ExportPageModel.ts"><a href="ExportPageModel.ts.html">ExportPageModel.ts</a></td>
|
|
83
98
|
<td data-value="0" class="pic low">
|
|
84
99
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
@@ -116,7 +131,7 @@
|
|
|
116
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
132
|
Code coverage generated by
|
|
118
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at 2026-05-
|
|
134
|
+
at 2026-05-13T17:06:38.136Z
|
|
120
135
|
</div>
|
|
121
136
|
<script src="../../../prettify.js"></script>
|
|
122
137
|
<script>
|
|
@@ -172,7 +172,7 @@ export const DEFAULT_THRESHOLDS: ResolvedThresholds = {
|
|
|
172
172
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
173
173
|
Code coverage generated by
|
|
174
174
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
175
|
-
at 2026-05-
|
|
175
|
+
at 2026-05-13T17:06:38.136Z
|
|
176
176
|
</div>
|
|
177
177
|
<script src="../prettify.js"></script>
|
|
178
178
|
<script>
|
package/reports/types/index.html
CHANGED
|
@@ -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-05-
|
|
104
|
+
at 2026-05-13T17:06:38.136Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../prettify.js"></script>
|
|
107
107
|
<script>
|
package/test-report.xml
CHANGED
|
@@ -1,98 +1,111 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<testExecutions version="1">
|
|
3
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
3
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/runner/tests/aiEnhancementStep.test.ts">
|
|
4
4
|
<testCase name="enhanceMarkdownIfConfigured returns report.markdown unchanged when config.ai is undefined" duration="9"/>
|
|
5
|
-
<testCase name="enhanceMarkdownIfConfigured passes config.ai through to the AiEnhancer constructor when ai is configured" duration="
|
|
6
|
-
<testCase name="enhanceMarkdownIfConfigured calls enhance with afterAnalysis.leakResults when ai is configured" duration="
|
|
5
|
+
<testCase name="enhanceMarkdownIfConfigured passes config.ai through to the AiEnhancer constructor when ai is configured" duration="3"/>
|
|
6
|
+
<testCase name="enhanceMarkdownIfConfigured calls enhance with afterAnalysis.leakResults when ai is configured" duration="1"/>
|
|
7
7
|
<testCase name="enhanceMarkdownIfConfigured returns the re-rendered markdown on AI success" duration="1"/>
|
|
8
|
-
<testCase name="enhanceMarkdownIfConfigured returns the original report.markdown when AI throws" duration="
|
|
8
|
+
<testCase name="enhanceMarkdownIfConfigured returns the original report.markdown when AI throws" duration="2"/>
|
|
9
9
|
<testCase name="enhanceMarkdownIfConfigured writes a single-line stderr warning naming the scenario when AI throws" duration="2"/>
|
|
10
10
|
<testCase name="enhanceMarkdownIfConfigured handles non-Error rejections by stringifying them" duration="1"/>
|
|
11
11
|
</file>
|
|
12
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
13
|
-
<testCase name="
|
|
14
|
-
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) passes when delta is under 10 MB with no new groups" duration="1"/>
|
|
15
|
-
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails when retained size delta exceeds 10 MB" duration="7"/>
|
|
16
|
-
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails when new leak groups are detected" duration="1"/>
|
|
17
|
-
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails and includes both violations in reason when both breach" duration="1"/>
|
|
18
|
-
<testCase name="ThresholdEvaluator with custom thresholds passes when delta is under custom threshold" duration="1"/>
|
|
19
|
-
<testCase name="ThresholdEvaluator with custom thresholds allows non-zero leak groups when threshold is raised" duration="1"/>
|
|
20
|
-
</file>
|
|
21
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/42/libs/encw-leak-runner/lib/config/tests/requiredEnvParams.test.ts">
|
|
22
|
-
<testCase name="RequiredEnvParamsResolver throws MissingRequiredParamError listing every missing field when nothing is provided" duration="3"/>
|
|
12
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/config/tests/requiredEnvParams.test.ts">
|
|
13
|
+
<testCase name="RequiredEnvParamsResolver throws MissingRequiredParamError listing every missing field when nothing is provided" duration="10"/>
|
|
23
14
|
<testCase name="RequiredEnvParamsResolver reads from env vars when CLI options are absent" duration="1"/>
|
|
24
15
|
<testCase name="RequiredEnvParamsResolver CLI options override env vars for non-secret fields" duration="1"/>
|
|
25
16
|
<testCase name="RequiredEnvParamsResolver password is read only from process.env (no CLI flag for secrets)" duration="14"/>
|
|
26
17
|
<testCase name="RequiredEnvParamsResolver reports only the missing fields when some are supplied" duration="1"/>
|
|
27
|
-
<testCase name="RequiredEnvParamsResolver treats empty-string env vars as missing" duration="
|
|
18
|
+
<testCase name="RequiredEnvParamsResolver treats empty-string env vars as missing" duration="2"/>
|
|
19
|
+
<testCase name="RequiredEnvParamsResolver resolves baseUrl from the envs map via --env" duration="1"/>
|
|
20
|
+
<testCase name="RequiredEnvParamsResolver resolves baseUrl from the envs map via ENCW_ENV" duration="1"/>
|
|
21
|
+
<testCase name="RequiredEnvParamsResolver --env beats ENCW_ENV when both are set" duration="0"/>
|
|
22
|
+
<testCase name="RequiredEnvParamsResolver --base-url beats --env map lookup" duration="0"/>
|
|
23
|
+
<testCase name="RequiredEnvParamsResolver BASE_URL env beats --env map lookup" duration="0"/>
|
|
24
|
+
<testCase name="RequiredEnvParamsResolver throws UnknownEnvError when --env names an undefined env" duration="2"/>
|
|
25
|
+
<testCase name="RequiredEnvParamsResolver throws UnknownEnvError when ENCW_ENV is set but envs map is empty" duration="1"/>
|
|
26
|
+
<testCase name="RequiredEnvParamsResolver falls back to MissingRequiredParamError when no baseUrl source is available" duration="1"/>
|
|
27
|
+
</file>
|
|
28
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/analysis/tests/thresholdEvaluator.test.ts">
|
|
29
|
+
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) passes when delta is zero" duration="2"/>
|
|
30
|
+
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) passes when delta is under 10 MB with no new groups" duration="0"/>
|
|
31
|
+
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails when retained size delta exceeds 10 MB" duration="0"/>
|
|
32
|
+
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails when new leak groups are detected" duration="1"/>
|
|
33
|
+
<testCase name="ThresholdEvaluator with defaults (10 MB / 0 new leak groups) fails and includes both violations in reason when both breach" duration="1"/>
|
|
34
|
+
<testCase name="ThresholdEvaluator with custom thresholds passes when delta is under custom threshold" duration="1"/>
|
|
35
|
+
<testCase name="ThresholdEvaluator with custom thresholds allows non-zero leak groups when threshold is raised" duration="0"/>
|
|
36
|
+
</file>
|
|
37
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/config/tests/runnerConfigLoader.test.ts">
|
|
38
|
+
<testCase name="RunnerConfigLoader produces built-in defaults when no source contributes" duration="2"/>
|
|
39
|
+
<testCase name="RunnerConfigLoader higher-priority sources override lower-priority sources" duration="1"/>
|
|
40
|
+
<testCase name="RunnerConfigLoader merges shallow keys without dropping unrelated fields" duration="1"/>
|
|
41
|
+
<testCase name="RunnerConfigLoader exposes ai defaults and reports aiEnabled=false when not set" duration="1"/>
|
|
42
|
+
<testCase name="RunnerConfigLoader reports aiEnabled=true when a source enables it" duration="0"/>
|
|
43
|
+
<testCase name="RunnerConfigLoader defaults envs to an empty map when no source contributes one" duration="1"/>
|
|
44
|
+
<testCase name="RunnerConfigLoader surfaces envs from a file source" duration="0"/>
|
|
45
|
+
<testCase name="RunnerConfigLoader higher-priority sources override env URLs key-by-key" duration="1"/>
|
|
28
46
|
</file>
|
|
29
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
30
|
-
<testCase name="ScenarioRegistry starts empty" duration="
|
|
47
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/registry/tests/scenarioRegistry.test.ts">
|
|
48
|
+
<testCase name="ScenarioRegistry starts empty" duration="17"/>
|
|
31
49
|
<testCase name="ScenarioRegistry builds keys as <microapp>/<scenario.id> when registering a group" duration="1"/>
|
|
32
50
|
<testCase name="ScenarioRegistry register() returns `this` to support chaining" duration="1"/>
|
|
33
|
-
<testCase name="ScenarioRegistry throws when registering a duplicate key" duration="
|
|
51
|
+
<testCase name="ScenarioRegistry throws when registering a duplicate key" duration="11"/>
|
|
34
52
|
<testCase name="ScenarioRegistry get() returns the registered scenario" duration="1"/>
|
|
35
53
|
<testCase name="ScenarioRegistry get() returns undefined for an unknown key" duration="0"/>
|
|
36
|
-
<testCase name="ScenarioRegistry list() returns entries sorted by key" duration="
|
|
54
|
+
<testCase name="ScenarioRegistry list() returns entries sorted by key" duration="13"/>
|
|
37
55
|
<testCase name="ScenarioRegistry filterByTag() returns only scenarios that include the tag" duration="1"/>
|
|
38
|
-
<testCase name="ScenarioRegistry filterByTag() returns an empty array when no scenarios match" duration="
|
|
56
|
+
<testCase name="ScenarioRegistry filterByTag() returns an empty array when no scenarios match" duration="1"/>
|
|
39
57
|
</file>
|
|
40
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
41
|
-
<testCase name="JunitReporter writes test-results.xml to outputDir" duration="
|
|
42
|
-
<testCase name="JunitReporter XML contains one testcase per scenario" duration="
|
|
43
|
-
<testCase name="JunitReporter XML contains a failure element for failing scenarios" duration="
|
|
58
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/reporting/tests/junitReporter.test.ts">
|
|
59
|
+
<testCase name="JunitReporter writes test-results.xml to outputDir" duration="4"/>
|
|
60
|
+
<testCase name="JunitReporter XML contains one testcase per scenario" duration="2"/>
|
|
61
|
+
<testCase name="JunitReporter XML contains a failure element for failing scenarios" duration="1"/>
|
|
44
62
|
<testCase name="JunitReporter testsuite has correct tests and failures count" duration="2"/>
|
|
45
63
|
<testCase name="JunitReporter XML content is properly escaped for special characters" duration="1"/>
|
|
46
64
|
</file>
|
|
47
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
48
|
-
<testCase name="
|
|
49
|
-
<testCase name="
|
|
50
|
-
<testCase name="
|
|
51
|
-
</file>
|
|
52
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/42/libs/encw-leak-runner/lib/config/tests/runnerConfigLoader.test.ts">
|
|
53
|
-
<testCase name="RunnerConfigLoader produces built-in defaults when no source contributes" duration="1"/>
|
|
54
|
-
<testCase name="RunnerConfigLoader higher-priority sources override lower-priority sources" duration="0"/>
|
|
55
|
-
<testCase name="RunnerConfigLoader merges shallow keys without dropping unrelated fields" duration="1"/>
|
|
56
|
-
<testCase name="RunnerConfigLoader exposes ai defaults and reports aiEnabled=false when not set" duration="1"/>
|
|
57
|
-
<testCase name="RunnerConfigLoader reports aiEnabled=true when a source enables it" duration="0"/>
|
|
58
|
-
</file>
|
|
59
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/42/libs/encw-leak-runner/lib/config/tests/fileConfigSource.test.ts">
|
|
60
|
-
<testCase name="FileConfigSource returns an empty payload when the file does not exist" duration="1"/>
|
|
61
|
-
<testCase name="FileConfigSource parses and validates a well-formed config file" duration="2"/>
|
|
62
|
-
<testCase name="FileConfigSource throws a descriptive error when the JSON is invalid" duration="7"/>
|
|
65
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/config/tests/fileConfigSource.test.ts">
|
|
66
|
+
<testCase name="FileConfigSource returns an empty payload when the file does not exist" duration="2"/>
|
|
67
|
+
<testCase name="FileConfigSource parses and validates a well-formed config file" duration="3"/>
|
|
68
|
+
<testCase name="FileConfigSource throws a descriptive error when the JSON is invalid" duration="8"/>
|
|
63
69
|
<testCase name="FileConfigSource throws a descriptive error when the schema is violated" duration="3"/>
|
|
64
70
|
<testCase name="FileConfigSource exposes priority 1 (lowest tier above defaults)" duration="0"/>
|
|
71
|
+
<testCase name="FileConfigSource parses an envs map of named environment URLs" duration="2"/>
|
|
72
|
+
<testCase name="FileConfigSource rejects an envs map whose URL value is an empty string" duration="2"/>
|
|
73
|
+
</file>
|
|
74
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/reporting/tests/consoleReporter.test.ts">
|
|
75
|
+
<testCase name="ConsoleReporter prints PASSED for a passing scenario" duration="7"/>
|
|
76
|
+
<testCase name="ConsoleReporter prints FAILED with reason for a failing scenario" duration="2"/>
|
|
77
|
+
<testCase name="ConsoleReporter prints overall summary line with pass and fail counts" duration="1"/>
|
|
65
78
|
</file>
|
|
66
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
79
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/config/tests/envVarConfigSource.test.ts">
|
|
67
80
|
<testCase name="EnvVarConfigSource returns empty when no relevant env vars are set" duration="2"/>
|
|
68
81
|
<testCase name="EnvVarConfigSource parses HEADLESS=false as headless: false" duration="1"/>
|
|
69
82
|
<testCase name="EnvVarConfigSource parses HEADLESS=true as headless: true" duration="1"/>
|
|
70
|
-
<testCase name="EnvVarConfigSource reads LEAK_OUTPUT_DIR into runner.outputDir" duration="
|
|
71
|
-
<testCase name="EnvVarConfigSource parses LEAK_TOP_N as an integer" duration="
|
|
83
|
+
<testCase name="EnvVarConfigSource reads LEAK_OUTPUT_DIR into runner.outputDir" duration="1"/>
|
|
84
|
+
<testCase name="EnvVarConfigSource parses LEAK_TOP_N as an integer" duration="0"/>
|
|
72
85
|
<testCase name="EnvVarConfigSource ignores LEAK_TOP_N when it is not a positive integer" duration="1"/>
|
|
73
86
|
<testCase name="EnvVarConfigSource exposes priority 2 (above file)" duration="1"/>
|
|
74
87
|
</file>
|
|
75
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
88
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/config/tests/cliOverrideConfigSource.test.ts">
|
|
76
89
|
<testCase name="CliOverrideConfigSource returns empty when no overrides are supplied" duration="1"/>
|
|
77
|
-
<testCase name="CliOverrideConfigSource passes through headless when supplied" duration="
|
|
90
|
+
<testCase name="CliOverrideConfigSource passes through headless when supplied" duration="1"/>
|
|
78
91
|
<testCase name="CliOverrideConfigSource passes through outputDir and topN when supplied" duration="0"/>
|
|
79
|
-
<testCase name="CliOverrideConfigSource exposes priority 3 (highest tier)" duration="
|
|
92
|
+
<testCase name="CliOverrideConfigSource exposes priority 3 (highest tier)" duration="1"/>
|
|
80
93
|
</file>
|
|
81
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
94
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/runner/tests/scenarioRunner.test.ts">
|
|
82
95
|
<testCase name="ScenarioRunner constructs without throwing" duration="8"/>
|
|
83
|
-
<testCase name="ScenarioRunner run() returns a ScenarioResult with error when browser interactions fail" duration="
|
|
84
|
-
<testCase name="ScenarioRunner run() returns a ScenarioResult with the correct shape on any outcome" duration="
|
|
96
|
+
<testCase name="ScenarioRunner run() returns a ScenarioResult with error when browser interactions fail" duration="5"/>
|
|
97
|
+
<testCase name="ScenarioRunner run() returns a ScenarioResult with the correct shape on any outcome" duration="16"/>
|
|
85
98
|
</file>
|
|
86
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
99
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/browser/tests/iframeHeapProfiler.test.ts">
|
|
87
100
|
<testCase name="IframeHeapProfiler is an instance of HeapMemoryProfiler" duration="2"/>
|
|
88
101
|
<testCase name="IframeHeapProfiler returns the page as CDP target when the iframe is same-origin" duration="1"/>
|
|
89
102
|
<testCase name="IframeHeapProfiler returns the frame as CDP target when the iframe is cross-origin (OOPIF)" duration="1"/>
|
|
90
103
|
<testCase name="IframeHeapProfiler treats an about:blank frame as same-origin and returns the page" duration="0"/>
|
|
91
104
|
<testCase name="IframeHeapProfiler base HeapMemoryProfiler returns page as CDP target" duration="1"/>
|
|
92
105
|
</file>
|
|
93
|
-
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/
|
|
94
|
-
<testCase name="BatchRunner runs all scenarios when no filter applied" duration="
|
|
95
|
-
<testCase name="BatchRunner filters scenarios by tag" duration="
|
|
106
|
+
<file path="/opt/jenkins/workspace/ies_encw-libraries_Build_v26.2.x/44/libs/encw-leak-runner/lib/runner/tests/batchRunner.test.ts">
|
|
107
|
+
<testCase name="BatchRunner runs all scenarios when no filter applied" duration="24"/>
|
|
108
|
+
<testCase name="BatchRunner filters scenarios by tag" duration="2"/>
|
|
96
109
|
<testCase name="BatchRunner runs a single scenario by registry key" duration="2"/>
|
|
97
110
|
<testCase name="BatchRunner throws when scenario key is not in the registry" duration="3"/>
|
|
98
111
|
<testCase name="BatchRunner totalDurationMs is sum of all scenario durations" duration="1"/>
|