playwright-reborn 0.2.0 → 0.2.2
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 +32 -0
- package/README.md +13 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/info.d.ts +1 -0
- package/dist/info.js +10 -0
- package/dist/info.js.map +1 -1
- package/dist/model.d.ts +8 -0
- package/dist/options.d.ts +17 -1
- package/dist/options.js +45 -2
- package/dist/options.js.map +1 -1
- package/dist/render.js +4 -0
- package/dist/render.js.map +1 -1
- package/dist/serialize.d.ts +8 -1
- package/dist/serialize.js +20 -1
- package/dist/serialize.js.map +1 -1
- package/dist/ui/report.css +44 -34
- package/dist/ui/report.js +153 -33
- package/package.json +8 -2
- package/dist/fixture-types.d.ts +0 -1
- package/dist/fixture-types.js +0 -9
- package/dist/fixture-types.js.map +0 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.2.2
|
|
4
|
+
|
|
5
|
+
- The company name has a subtitle. The default is Test Automation.
|
|
6
|
+
- The overview no longer shows the open-source credit, the Playwright version, or project names unless you turn those on.
|
|
7
|
+
- The commit is the first 7 characters. Projects are off the info grid unless `showProjects` is true.
|
|
8
|
+
- The Tests page keeps the tag filter and hides the project filter unless `showProjectFilter` is true.
|
|
9
|
+
- Tags that look like `HC2T-` ids are hidden. Set `ignoreTags` to `false` to keep them.
|
|
10
|
+
- The duration view is a pie chart and a bar chart. `chartStyle` can be `pie`, `bar`, or `both`.
|
|
11
|
+
|
|
12
|
+
## 0.2.1
|
|
13
|
+
|
|
14
|
+
- The Timeline view no longer keeps the duration chart on screen.
|
|
15
|
+
- Run info lines up to the left.
|
|
16
|
+
- A file row names the kind once and links the file.
|
|
17
|
+
- Font license files are written to `assets/fonts/` even when the HTML file is self-contained.
|
|
18
|
+
|
|
19
|
+
## 0.2.0
|
|
20
|
+
|
|
21
|
+
- `step()` returns the value of its body.
|
|
22
|
+
- Screenshots stay on the test that took them when tests run in parallel.
|
|
23
|
+
- The report is one HTML file by default. CSS, the page script, fonts, and screenshots are inside it.
|
|
24
|
+
- The overview lists run metadata: suite, user, environment, state, defects, base URL, branch, commit, projects, workers, shard, and Playwright version.
|
|
25
|
+
- Tests can be filtered by tag and by project.
|
|
26
|
+
- `steps: 'user'` leaves hooks and Playwright's own API calls out of the step tree.
|
|
27
|
+
- The company title is the name you pass. If you omit it, the title is the project folder name.
|
|
28
|
+
- `showLogs` and `showFiles` still default to on. Set either to `false` to leave that page out.
|
|
29
|
+
|
|
30
|
+
## 0.1.0
|
|
31
|
+
|
|
32
|
+
- First npm release of the end-of-run HTML reporter.
|
package/README.md
CHANGED
|
@@ -53,6 +53,8 @@ Pass any of these next to the reporter. Omitted settings use the default.
|
|
|
53
53
|
user: 'ada',
|
|
54
54
|
state: 'CA',
|
|
55
55
|
defects: ['PAY-14'],
|
|
56
|
+
productSubtitle: 'Test Automation',
|
|
57
|
+
chartStyle: 'both',
|
|
56
58
|
}]
|
|
57
59
|
```
|
|
58
60
|
|
|
@@ -65,6 +67,14 @@ Pass any of these next to the reporter. Omitted settings use the default.
|
|
|
65
67
|
| `reportFileName` | `index.html` | One `.html` file name, with no folders. Jenkins HTML Publisher can point at this file. |
|
|
66
68
|
| `inline` | `true` | `true` or `false`. `true` writes one HTML file with the CSS, script, and fonts inside it, and embeds screenshots. Traces and other files stay as relative links in the report folder. |
|
|
67
69
|
| `overview` | `chart` | `chart` or `timeline`. Which view the overview opens on. The buttons on the page can still switch it. |
|
|
70
|
+
| `chartStyle` | `both` | `pie`, `bar`, or `both`. The duration chart. `chart` opens on these charts. |
|
|
71
|
+
| `productSubtitle` | `Test Automation` | The line under the company name. An empty string hides it. |
|
|
72
|
+
| `showCredit` | `false` | `true` shows “Open source by World of Z” in the footer. It is not on the overview. |
|
|
73
|
+
| `showPlaywrightVersion` | `false` | `true` shows the Playwright version in the header and the info grid. |
|
|
74
|
+
| `showProjects` | `false` | `true` shows project names in the header and the info grid. |
|
|
75
|
+
| `showProjectFilter` | `false` | `true` adds a Project filter on Tests. It stays off when `showProjects` is `false`. |
|
|
76
|
+
| `commitShort` | `true` | `true` shows the first 7 characters of the commit. `false` shows the full value. |
|
|
77
|
+
| `ignoreTags` | `^@?HC2T-` | A pattern for tags to hide, or `false` to keep every tag. |
|
|
68
78
|
| `screenshots` | `failure` | `off`, `failure`, `last`, or `steps`. When the fixture takes a picture. The reporter sets `REBORN_SCREENSHOTS` in `onBegin`. Do not set that variable yourself. The Screenshots page stays in the report either way. |
|
|
69
79
|
| `steps` | `user` | `user` or `all`. `user` keeps the steps you wrote and the expectations, and leaves hooks and Playwright's own API calls out. `all` keeps those calls too. |
|
|
70
80
|
| `showLogs` | `true` | `true` or `false`. `false` leaves the Logs page out. |
|
|
@@ -118,4 +128,6 @@ Set `open: 'never'` when `CI` is set so the reporter does not launch a browser o
|
|
|
118
128
|
|
|
119
129
|
Open source by World of Z. The code is MIT.
|
|
120
130
|
|
|
121
|
-
Geist and JetBrains Mono are included under the SIL Open Font License.
|
|
131
|
+
Geist and JetBrains Mono are included under the SIL Open Font License. With `inline: true`, the fonts are embedded in the HTML file. The license files are still written to `assets/fonts/` in the report folder.
|
|
132
|
+
|
|
133
|
+
Release notes are in `CHANGELOG.md`.
|
package/dist/index.js
CHANGED
|
@@ -69,11 +69,11 @@ class RebornReporter {
|
|
|
69
69
|
defects: [...new Set(defects)].join(', '),
|
|
70
70
|
baseURL,
|
|
71
71
|
branch: (0, info_1.textValue)(this.metadata('branch')) || process.env.GITHUB_REF_NAME || process.env.GIT_BRANCH || process.env.BRANCH_NAME || '',
|
|
72
|
-
sha: (0, info_1.textValue)(this.metadata('sha')) || process.env.GITHUB_SHA || process.env.GIT_COMMIT || process.env.COMMIT_SHA || '',
|
|
73
|
-
projects: config?.projects.map((project) => project.name).filter(Boolean).join(', ') || '',
|
|
72
|
+
sha: (0, info_1.shortSha)((0, info_1.textValue)(this.metadata('sha')) || (0, info_1.textValue)(this.metadata('githubSha')) || process.env.GITHUB_SHA || process.env.GIT_COMMIT || process.env.COMMIT_SHA || '', this.parsed.commitShort),
|
|
73
|
+
projects: this.parsed.showProjects ? config?.projects.map((project) => project.name).filter(Boolean).join(', ') || '' : '',
|
|
74
74
|
workers: config ? String(config.workers) : '',
|
|
75
75
|
shard: config?.shard ? `${config.shard.current}/${config.shard.total}` : '',
|
|
76
|
-
playwright: config?.version || '',
|
|
76
|
+
playwright: this.parsed.showPlaywrightVersion ? config?.version || '' : '',
|
|
77
77
|
});
|
|
78
78
|
}
|
|
79
79
|
folderFor(config) {
|
|
@@ -106,6 +106,13 @@ class RebornReporter {
|
|
|
106
106
|
showLogs: this.parsed.showLogs,
|
|
107
107
|
showFiles: this.parsed.showFiles,
|
|
108
108
|
overview: this.parsed.overview,
|
|
109
|
+
chartStyle: this.parsed.chartStyle,
|
|
110
|
+
productSubtitle: this.parsed.productSubtitle,
|
|
111
|
+
showCredit: this.parsed.showCredit,
|
|
112
|
+
showPlaywrightVersion: this.parsed.showPlaywrightVersion,
|
|
113
|
+
showProjects: this.parsed.showProjects,
|
|
114
|
+
showProjectFilter: this.parsed.showProjectFilter,
|
|
115
|
+
ignoreTags: this.parsed.ignoreTags,
|
|
109
116
|
info: this.runInfo(),
|
|
110
117
|
});
|
|
111
118
|
const indexPath = await (0, render_1.writeReport)(outputDir, report, files, node_path_1.default.join(__dirname, 'ui'), {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,0DAA6B;AAG7B,iCAAoC;AACpC,uCAA6D;AAC7D,mCAA8C;AAC9C,qCAAuC;AACvC,2CAA0C;AAC1C,qCAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/info.d.ts
CHANGED
|
@@ -4,4 +4,5 @@ export type InfoRow = {
|
|
|
4
4
|
};
|
|
5
5
|
export declare function infoRows(fields: Record<string, string | undefined>): InfoRow[];
|
|
6
6
|
export declare function textValue(value: unknown): string;
|
|
7
|
+
export declare function shortSha(value: string, short?: boolean): string;
|
|
7
8
|
export declare function listValue(value: unknown): string[];
|
package/dist/info.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.infoRows = infoRows;
|
|
4
4
|
exports.textValue = textValue;
|
|
5
|
+
exports.shortSha = shortSha;
|
|
5
6
|
exports.listValue = listValue;
|
|
6
7
|
const FIELDS = [
|
|
7
8
|
['suite', 'Suite'],
|
|
@@ -34,6 +35,15 @@ function textValue(value) {
|
|
|
34
35
|
return String(value);
|
|
35
36
|
return '';
|
|
36
37
|
}
|
|
38
|
+
function shortSha(value, short = true) {
|
|
39
|
+
const clean = value.trim();
|
|
40
|
+
if (!clean || !short)
|
|
41
|
+
return clean;
|
|
42
|
+
const hex = clean.match(/[0-9a-f]{7,40}/i);
|
|
43
|
+
if (!hex)
|
|
44
|
+
return clean.length > 12 ? clean.slice(0, 7) : clean;
|
|
45
|
+
return hex[0].slice(0, 7);
|
|
46
|
+
}
|
|
37
47
|
function listValue(value) {
|
|
38
48
|
if (Array.isArray(value)) {
|
|
39
49
|
return value.flatMap((item) => listValue(item));
|
package/dist/info.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"info.js","sourceRoot":"","sources":["../src/info.ts"],"names":[],"mappings":";;AAiBA,4BAQC;AAED,8BAIC;AAED,8BAMC;
|
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../src/info.ts"],"names":[],"mappings":";;AAiBA,4BAQC;AAED,8BAIC;AAED,4BAMC;AAED,8BAMC;AA7CD,MAAM,MAAM,GAA4B;IACtC,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,SAAS,EAAE,UAAU,CAAC;IACvB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,KAAK,EAAE,QAAQ,CAAC;IACjB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,YAAY,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,SAAgB,QAAQ,CAAC,MAA0C;IACjE,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,SAAS,CAAC,KAAc;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAgB,QAAQ,CAAC,KAAa,EAAE,KAAK,GAAG,IAAI;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC/D,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED,SAAgB,SAAS,CAAC,KAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACrE,CAAC"}
|
package/dist/model.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export type ShotRole = 'step' | 'last' | 'failure';
|
|
|
5
5
|
export type ShotMode = 'off' | 'failure' | 'last' | 'steps';
|
|
6
6
|
export type Accent = 'green' | 'red' | 'blue' | 'amber' | 'violet';
|
|
7
7
|
export type OverviewMode = 'chart' | 'timeline';
|
|
8
|
+
export type ChartStyle = 'pie' | 'bar' | 'both';
|
|
8
9
|
export type StepDetail = 'user' | 'all';
|
|
9
10
|
export type Counts = {
|
|
10
11
|
total: number;
|
|
@@ -86,6 +87,13 @@ export type Report = {
|
|
|
86
87
|
showLogs: boolean;
|
|
87
88
|
showFiles: boolean;
|
|
88
89
|
overview: OverviewMode;
|
|
90
|
+
chartStyle: ChartStyle;
|
|
91
|
+
productSubtitle: string;
|
|
92
|
+
showCredit: boolean;
|
|
93
|
+
showPlaywrightVersion: boolean;
|
|
94
|
+
showProjects: boolean;
|
|
95
|
+
showProjectFilter: boolean;
|
|
96
|
+
ignoreTags: string;
|
|
89
97
|
summary: string;
|
|
90
98
|
startTime: string;
|
|
91
99
|
duration: number;
|
package/dist/options.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Accent, OverviewMode, ShotMode, StepDetail } from './model';
|
|
1
|
+
import type { Accent, ChartStyle, OverviewMode, ShotMode, StepDetail } from './model';
|
|
2
2
|
export type RebornOpen = 'always' | 'never' | 'on-failure';
|
|
3
3
|
export type RebornOptions = {
|
|
4
4
|
outputFolder?: string;
|
|
@@ -17,6 +17,14 @@ export type RebornOptions = {
|
|
|
17
17
|
environment?: string;
|
|
18
18
|
state?: string;
|
|
19
19
|
defects?: string | string[];
|
|
20
|
+
productSubtitle?: string;
|
|
21
|
+
showCredit?: boolean;
|
|
22
|
+
showPlaywrightVersion?: boolean;
|
|
23
|
+
showProjects?: boolean;
|
|
24
|
+
showProjectFilter?: boolean;
|
|
25
|
+
commitShort?: boolean;
|
|
26
|
+
chartStyle?: ChartStyle;
|
|
27
|
+
ignoreTags?: string | false;
|
|
20
28
|
};
|
|
21
29
|
export type ParsedOptions = {
|
|
22
30
|
outputFolder: string;
|
|
@@ -36,5 +44,13 @@ export type ParsedOptions = {
|
|
|
36
44
|
environment: string;
|
|
37
45
|
state: string;
|
|
38
46
|
defects: string[];
|
|
47
|
+
productSubtitle: string;
|
|
48
|
+
showCredit: boolean;
|
|
49
|
+
showPlaywrightVersion: boolean;
|
|
50
|
+
showProjects: boolean;
|
|
51
|
+
showProjectFilter: boolean;
|
|
52
|
+
commitShort: boolean;
|
|
53
|
+
chartStyle: ChartStyle;
|
|
54
|
+
ignoreTags: string;
|
|
39
55
|
};
|
|
40
56
|
export declare function parseOptions(options?: RebornOptions): ParsedOptions;
|
package/dist/options.js
CHANGED
|
@@ -6,6 +6,7 @@ const SHOTS = new Set(['off', 'failure', 'last', 'steps']);
|
|
|
6
6
|
const STEP_DETAILS = new Set(['user', 'all']);
|
|
7
7
|
const ACCENTS = new Set(['green', 'red', 'blue', 'amber', 'violet']);
|
|
8
8
|
const OVERVIEWS = new Set(['chart', 'timeline']);
|
|
9
|
+
const CHARTS = new Set(['pie', 'bar', 'both']);
|
|
9
10
|
function parseOptions(options = {}) {
|
|
10
11
|
if (options === null || typeof options !== 'object' || Array.isArray(options)) {
|
|
11
12
|
throw new Error('Reborn options must be an object.');
|
|
@@ -30,10 +31,19 @@ function parseOptions(options = {}) {
|
|
|
30
31
|
const showLogs = flag(options.showLogs, 'showLogs');
|
|
31
32
|
const showFiles = flag(options.showFiles, 'showFiles');
|
|
32
33
|
const inline = flag(options.inline, 'inline');
|
|
34
|
+
const showCredit = flag(options.showCredit, 'showCredit', false);
|
|
35
|
+
const showPlaywrightVersion = flag(options.showPlaywrightVersion, 'showPlaywrightVersion', false);
|
|
36
|
+
const showProjects = flag(options.showProjects, 'showProjects', false);
|
|
37
|
+
const showProjectFilter = showProjects && flag(options.showProjectFilter, 'showProjectFilter', false);
|
|
38
|
+
const commitShort = flag(options.commitShort, 'commitShort', true);
|
|
33
39
|
const overview = options.overview ?? 'chart';
|
|
34
40
|
if (!OVERVIEWS.has(overview)) {
|
|
35
41
|
throw new Error('Reborn overview must be "chart" or "timeline".');
|
|
36
42
|
}
|
|
43
|
+
const chartStyle = options.chartStyle ?? 'both';
|
|
44
|
+
if (!CHARTS.has(chartStyle)) {
|
|
45
|
+
throw new Error('Reborn chartStyle must be "pie", "bar", or "both".');
|
|
46
|
+
}
|
|
37
47
|
const outputExplicit = options.outputFolder !== undefined;
|
|
38
48
|
const outputFolder = options.outputFolder ?? 'reborn-report';
|
|
39
49
|
if (typeof outputFolder !== 'string' || !outputFolder.trim()) {
|
|
@@ -61,8 +71,41 @@ function parseOptions(options = {}) {
|
|
|
61
71
|
environment: optionalText(options.environment, 'environment'),
|
|
62
72
|
state: optionalText(options.state, 'state'),
|
|
63
73
|
defects: defectsOf(options.defects),
|
|
74
|
+
productSubtitle: subtitle(options.productSubtitle),
|
|
75
|
+
showCredit,
|
|
76
|
+
showPlaywrightVersion,
|
|
77
|
+
showProjects,
|
|
78
|
+
showProjectFilter,
|
|
79
|
+
commitShort,
|
|
80
|
+
chartStyle,
|
|
81
|
+
ignoreTags: ignorePattern(options.ignoreTags),
|
|
64
82
|
};
|
|
65
83
|
}
|
|
84
|
+
function subtitle(value) {
|
|
85
|
+
if (value === undefined)
|
|
86
|
+
return 'Test Automation';
|
|
87
|
+
if (typeof value !== 'string') {
|
|
88
|
+
throw new Error('Reborn productSubtitle must be text.');
|
|
89
|
+
}
|
|
90
|
+
return value.trim();
|
|
91
|
+
}
|
|
92
|
+
function ignorePattern(value) {
|
|
93
|
+
if (value === false)
|
|
94
|
+
return '';
|
|
95
|
+
const pattern = value === undefined ? '^@?HC2T-' : value;
|
|
96
|
+
if (typeof pattern !== 'string') {
|
|
97
|
+
throw new Error('Reborn ignoreTags must be a pattern or false.');
|
|
98
|
+
}
|
|
99
|
+
if (!pattern.trim())
|
|
100
|
+
return '';
|
|
101
|
+
try {
|
|
102
|
+
new RegExp(pattern, 'i');
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
throw new Error('Reborn ignoreTags must be a valid pattern.');
|
|
106
|
+
}
|
|
107
|
+
return pattern.trim();
|
|
108
|
+
}
|
|
66
109
|
function optionalText(value, name) {
|
|
67
110
|
if (value === undefined)
|
|
68
111
|
return '';
|
|
@@ -80,9 +123,9 @@ function defectsOf(value) {
|
|
|
80
123
|
}
|
|
81
124
|
return items.map((item) => item.trim());
|
|
82
125
|
}
|
|
83
|
-
function flag(value, name) {
|
|
126
|
+
function flag(value, name, fallback = true) {
|
|
84
127
|
if (value === undefined)
|
|
85
|
-
return
|
|
128
|
+
return fallback;
|
|
86
129
|
if (typeof value !== 'boolean') {
|
|
87
130
|
throw new Error(`Reborn ${name} must be true or false.`);
|
|
88
131
|
}
|
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
package/dist/render.js
CHANGED
|
@@ -140,6 +140,10 @@ async function writeReport(outputDir, report, files, uiDir, output = { inline: t
|
|
|
140
140
|
await (0, paths_1.prepareOutput)(outputDir);
|
|
141
141
|
const assets = node_path_1.default.join(outputDir, 'assets');
|
|
142
142
|
await promises_1.default.mkdir(node_path_1.default.join(assets, 'attachments'), { recursive: true });
|
|
143
|
+
await promises_1.default.mkdir(node_path_1.default.join(assets, 'fonts'), { recursive: true });
|
|
144
|
+
for (const license of ['Geist-OFL.txt', 'JetBrainsMono-OFL.txt']) {
|
|
145
|
+
await promises_1.default.copyFile(node_path_1.default.join(uiDir, 'fonts', license), node_path_1.default.join(assets, 'fonts', license));
|
|
146
|
+
}
|
|
143
147
|
if (!output.inline) {
|
|
144
148
|
await promises_1.default.copyFile(stylesheet, node_path_1.default.join(assets, 'report.css'));
|
|
145
149
|
await promises_1.default.copyFile(script, node_path_1.default.join(assets, 'report.js'));
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":";;;;;AAMA,sCAEC;AAUD,gCAyBC;AAsFD,
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/dist/serialize.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TestError } from '@playwright/test/reporter';
|
|
2
|
-
import type { Accent, Attempt, InfoRow, PendingFile, Report, ReportError, RunStatus, ShotMode, StepDetail } from './model';
|
|
2
|
+
import type { Accent, Attempt, ChartStyle, InfoRow, PendingFile, Report, ReportError, RunStatus, ShotMode, StepDetail } from './model';
|
|
3
3
|
export type SourceSuite = {
|
|
4
4
|
title: string;
|
|
5
5
|
type: 'root' | 'project' | 'file' | 'describe';
|
|
@@ -81,6 +81,13 @@ export type BuildInput = {
|
|
|
81
81
|
showFiles?: boolean;
|
|
82
82
|
overview?: 'chart' | 'timeline';
|
|
83
83
|
info?: InfoRow[];
|
|
84
|
+
chartStyle?: ChartStyle;
|
|
85
|
+
productSubtitle?: string;
|
|
86
|
+
showCredit?: boolean;
|
|
87
|
+
showPlaywrightVersion?: boolean;
|
|
88
|
+
showProjects?: boolean;
|
|
89
|
+
showProjectFilter?: boolean;
|
|
90
|
+
ignoreTags?: string;
|
|
84
91
|
};
|
|
85
92
|
export declare function buildReport(input: BuildInput): {
|
|
86
93
|
report: Report;
|
package/dist/serialize.js
CHANGED
|
@@ -24,6 +24,18 @@ function projectOf(test) {
|
|
|
24
24
|
}
|
|
25
25
|
return '';
|
|
26
26
|
}
|
|
27
|
+
function visibleTags(tags, pattern) {
|
|
28
|
+
if (!pattern)
|
|
29
|
+
return tags.slice(0, 20);
|
|
30
|
+
let expression;
|
|
31
|
+
try {
|
|
32
|
+
expression = new RegExp(pattern, 'i');
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return tags.slice(0, 20);
|
|
36
|
+
}
|
|
37
|
+
return tags.filter((tag) => !expression.test(tag)).slice(0, 20);
|
|
38
|
+
}
|
|
27
39
|
function groupOf(test) {
|
|
28
40
|
return walkSuites(test)
|
|
29
41
|
.filter((suite) => suite.type === 'describe' && suite.title)
|
|
@@ -189,7 +201,7 @@ function buildReport(input) {
|
|
|
189
201
|
line: test.location.line,
|
|
190
202
|
project: projectOf(test),
|
|
191
203
|
group: groupOf(test),
|
|
192
|
-
tags: test.tags
|
|
204
|
+
tags: visibleTags(test.tags, input.ignoreTags ?? '^@?HC2T-'),
|
|
193
205
|
annotations: test.annotations.slice(0, 40).map((annotation) => ({
|
|
194
206
|
type: annotation.type,
|
|
195
207
|
description: annotation.description ? (0, format_1.capText)(annotation.description, 500) : undefined,
|
|
@@ -215,6 +227,13 @@ function buildReport(input) {
|
|
|
215
227
|
showLogs: input.showLogs !== false,
|
|
216
228
|
showFiles: input.showFiles !== false,
|
|
217
229
|
overview: input.overview === 'timeline' ? 'timeline' : 'chart',
|
|
230
|
+
chartStyle: input.chartStyle === 'pie' || input.chartStyle === 'bar' ? input.chartStyle : 'both',
|
|
231
|
+
productSubtitle: input.productSubtitle === undefined ? 'Test Automation' : input.productSubtitle,
|
|
232
|
+
showCredit: input.showCredit === true,
|
|
233
|
+
showPlaywrightVersion: input.showPlaywrightVersion === true,
|
|
234
|
+
showProjects: input.showProjects === true,
|
|
235
|
+
showProjectFilter: input.showProjectFilter === true,
|
|
236
|
+
ignoreTags: input.ignoreTags ?? '^@?HC2T-',
|
|
218
237
|
summary: (0, status_1.summaryLine)(counts),
|
|
219
238
|
startTime: input.startTime.toISOString(),
|
|
220
239
|
duration: input.duration,
|
package/dist/serialize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/report.css
CHANGED
|
@@ -87,6 +87,8 @@ body[data-accent="violet"] {
|
|
|
87
87
|
|
|
88
88
|
* { box-sizing: border-box; }
|
|
89
89
|
|
|
90
|
+
[hidden] { display: none !important; }
|
|
91
|
+
|
|
90
92
|
body {
|
|
91
93
|
margin: 0;
|
|
92
94
|
background: #050806;
|
|
@@ -218,6 +220,15 @@ button { cursor: pointer; }
|
|
|
218
220
|
.word[data-status="timedOut"],
|
|
219
221
|
.word[data-status="interrupted"] { color: var(--text); }
|
|
220
222
|
|
|
223
|
+
.product {
|
|
224
|
+
margin: 10px 0 0;
|
|
225
|
+
color: var(--text);
|
|
226
|
+
font-size: clamp(22px, 3vw, 32px);
|
|
227
|
+
font-weight: 500;
|
|
228
|
+
letter-spacing: -0.03em;
|
|
229
|
+
line-height: 1.15;
|
|
230
|
+
}
|
|
231
|
+
|
|
221
232
|
.time {
|
|
222
233
|
margin: 0;
|
|
223
234
|
font-weight: 500;
|
|
@@ -251,7 +262,13 @@ button { cursor: pointer; }
|
|
|
251
262
|
margin: 0 0 8px;
|
|
252
263
|
}
|
|
253
264
|
|
|
254
|
-
.info-row {
|
|
265
|
+
.info-row {
|
|
266
|
+
display: flex;
|
|
267
|
+
flex-direction: column;
|
|
268
|
+
align-items: flex-start;
|
|
269
|
+
margin: 0;
|
|
270
|
+
text-align: left;
|
|
271
|
+
}
|
|
255
272
|
.info dt { color: var(--subtle); font-size: 12px; }
|
|
256
273
|
.info dd { margin: 2px 0 0; font-size: 14px; }
|
|
257
274
|
|
|
@@ -414,48 +431,39 @@ button { cursor: pointer; }
|
|
|
414
431
|
box-shadow: inset 0 -1px 0 var(--accent);
|
|
415
432
|
}
|
|
416
433
|
|
|
417
|
-
|
|
434
|
+
.charts {
|
|
418
435
|
display: grid;
|
|
419
|
-
grid-template-columns:
|
|
420
|
-
gap:
|
|
421
|
-
|
|
436
|
+
grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
|
|
437
|
+
gap: 28px 36px;
|
|
438
|
+
align-items: center;
|
|
439
|
+
margin-top: 12px;
|
|
422
440
|
}
|
|
423
441
|
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
442
|
+
.pie { width: min(240px, 100%); height: auto; display: block; }
|
|
443
|
+
.slice { cursor: pointer; }
|
|
444
|
+
|
|
445
|
+
.bars { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
|
|
446
|
+
|
|
447
|
+
.band {
|
|
448
|
+
display: grid;
|
|
449
|
+
grid-template-columns: 12px minmax(0, 1fr) auto;
|
|
450
|
+
grid-template-rows: auto 6px;
|
|
451
|
+
gap: 6px 10px;
|
|
429
452
|
width: 100%;
|
|
430
453
|
background: transparent;
|
|
431
454
|
border: 0;
|
|
432
|
-
padding:
|
|
455
|
+
padding: 0;
|
|
433
456
|
color: var(--subtle);
|
|
434
457
|
text-align: left;
|
|
435
458
|
}
|
|
436
459
|
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
font-size: 28px;
|
|
440
|
-
line-height: 1;
|
|
441
|
-
letter-spacing: -0.04em;
|
|
442
|
-
}
|
|
443
|
-
|
|
444
|
-
#duration .band[aria-pressed="true"] .n { color: var(--accent); }
|
|
445
|
-
|
|
460
|
+
.swatch { width: 12px; height: 12px; margin-top: 3px; }
|
|
461
|
+
.band .n { color: var(--text); font-size: 16px; letter-spacing: 0; }
|
|
446
462
|
.band-label { font-size: 14px; }
|
|
447
|
-
|
|
448
|
-
.band-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
background: var(--hairline);
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
.band-fill {
|
|
455
|
-
display: block;
|
|
456
|
-
height: 100%;
|
|
457
|
-
background: var(--accent);
|
|
458
|
-
}
|
|
463
|
+
.band-track { grid-column: 2 / -1; height: 6px; background: var(--hairline); }
|
|
464
|
+
.band-fill { display: block; height: 100%; background: var(--accent); }
|
|
465
|
+
.band[aria-pressed="true"] .band-label,
|
|
466
|
+
.band[aria-pressed="true"] .n { color: var(--accent); }
|
|
459
467
|
|
|
460
468
|
.order {
|
|
461
469
|
display: flex;
|
|
@@ -1010,7 +1018,8 @@ dialog::backdrop { background: rgba(8, 8, 8, 0.92); }
|
|
|
1010
1018
|
pointer-events: none;
|
|
1011
1019
|
}
|
|
1012
1020
|
|
|
1013
|
-
.rail .meta { margin: 0 0 0 auto; flex-direction: row; gap: 16px; }
|
|
1021
|
+
.rail .meta { margin: 0 0 0 auto; flex-direction: row; gap: 16px; justify-content: flex-end; text-align: right; }
|
|
1022
|
+
.rail .meta span { white-space: nowrap; }
|
|
1014
1023
|
|
|
1015
1024
|
.rail .tabbar {
|
|
1016
1025
|
flex-direction: row;
|
|
@@ -1171,7 +1180,8 @@ dialog::backdrop { background: rgba(8, 8, 8, 0.92); }
|
|
|
1171
1180
|
.rail .meta { display: none; }
|
|
1172
1181
|
.rail .tabbar { flex-wrap: wrap; width: 100%; }
|
|
1173
1182
|
.stage { width: 100%; padding: 12px 16px 40px; }
|
|
1174
|
-
#legend.legend
|
|
1183
|
+
#legend.legend { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
1184
|
+
.charts { grid-template-columns: 1fr; }
|
|
1175
1185
|
#legend .count { border-right: 0; }
|
|
1176
1186
|
.evidence { grid-template-columns: 1fr; }
|
|
1177
1187
|
.hero { margin: 24px 0 32px; }
|
package/dist/ui/report.js
CHANGED
|
@@ -70,17 +70,18 @@
|
|
|
70
70
|
document.body.dataset.accent = accentName();
|
|
71
71
|
document.title = companyName() + (data.summary ? ' · ' + data.summary : '');
|
|
72
72
|
fill(document.getElementById('meta'), metaBits().map(function (bit) { return el('span', null, [bit]); }));
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
73
|
+
var footBits = [];
|
|
74
|
+
if (data.showCredit === true) footBits.push(el('span', null, ['Open source by World of Z']));
|
|
75
|
+
footBits.push(el('span', null, [formatWhen(data.generatedAt)]));
|
|
76
|
+
footBits.push(el('span', null, ['Keys 1 onward switch pages. Press / to find a test.']));
|
|
77
|
+
fill(document.getElementById('foot'), footBits);
|
|
78
78
|
var BANDS = [
|
|
79
79
|
['under1', 'Under 1 minute'],
|
|
80
80
|
['1to3', '1 to 3 minutes'],
|
|
81
81
|
['3to5', '3 to 5 minutes'],
|
|
82
82
|
['over5', 'Over 5 minutes'],
|
|
83
83
|
];
|
|
84
|
+
var CHART_COLORS = ['var(--accent)', 'rgba(255,255,255,0.72)', 'rgba(255,255,255,0.42)', 'rgba(255,255,255,0.18)'];
|
|
84
85
|
|
|
85
86
|
paintOverview();
|
|
86
87
|
showTab(state.tab, true);
|
|
@@ -248,7 +249,7 @@
|
|
|
248
249
|
var host = document.getElementById('panel-overview');
|
|
249
250
|
host.innerHTML = [
|
|
250
251
|
'<header class="hero">',
|
|
251
|
-
'<div><h1 class="word" id="word"></h1><p class="
|
|
252
|
+
'<div><h1 class="word" id="word"></h1><p class="product" id="product"></p><p class="summary" id="summary"></p></div>',
|
|
252
253
|
'<p class="time" id="time"></p>',
|
|
253
254
|
'</header>',
|
|
254
255
|
'<div id="errors"></div>',
|
|
@@ -265,13 +266,17 @@
|
|
|
265
266
|
'</div>',
|
|
266
267
|
'</div>',
|
|
267
268
|
'<p class="section-note" id="range-note"></p>',
|
|
268
|
-
'<div class="
|
|
269
|
+
'<div class="charts" id="duration"></div>',
|
|
269
270
|
'<div class="strip-window" id="strip-window"><div class="strip-scroll"><div class="strip" id="strip" role="group" aria-label="Tests by time"></div></div></div>',
|
|
270
271
|
'</div>',
|
|
271
272
|
'</section>',
|
|
272
273
|
].join('');
|
|
273
274
|
var word = document.getElementById('word');
|
|
274
275
|
word.textContent = companyName();
|
|
276
|
+
var product = document.getElementById('product');
|
|
277
|
+
var subtitle = typeof data.productSubtitle === 'string' ? data.productSubtitle.trim() : 'Test Automation';
|
|
278
|
+
if (subtitle) product.textContent = subtitle;
|
|
279
|
+
else product.hidden = true;
|
|
275
280
|
document.getElementById('summary').textContent = data.summary || '';
|
|
276
281
|
countUp(document.getElementById('time'), data.duration || 0, formatDuration);
|
|
277
282
|
paintErrors();
|
|
@@ -317,29 +322,125 @@
|
|
|
317
322
|
return data.tests.filter(function (test) { return test.status !== 'skipped'; });
|
|
318
323
|
}
|
|
319
324
|
|
|
320
|
-
function
|
|
321
|
-
var host = document.getElementById('duration');
|
|
322
|
-
if (!host) return;
|
|
325
|
+
function bandCounts() {
|
|
323
326
|
var counts = { under1: 0, '1to3': 0, '3to5': 0, over5: 0 };
|
|
324
327
|
countedTests().forEach(function (test) {
|
|
325
328
|
counts[durationBand(test.duration)] += 1;
|
|
326
329
|
});
|
|
330
|
+
return counts;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
function chartStyle() {
|
|
334
|
+
return data.chartStyle === 'pie' || data.chartStyle === 'bar' ? data.chartStyle : 'both';
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
function polar(cx, cy, radius, degrees) {
|
|
338
|
+
var rad = (degrees - 90) * Math.PI / 180;
|
|
339
|
+
return { x: cx + radius * Math.cos(rad), y: cy + radius * Math.sin(rad) };
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
function piePath(start, end) {
|
|
343
|
+
var span = end - start;
|
|
344
|
+
if (span >= 359.99) return '';
|
|
345
|
+
var from = polar(110, 110, 96, start);
|
|
346
|
+
var to = polar(110, 110, 96, end);
|
|
347
|
+
var large = span > 180 ? 1 : 0;
|
|
348
|
+
return 'M 110 110 L ' + from.x.toFixed(2) + ' ' + from.y.toFixed(2) + ' A 96 96 0 ' + large + ' 1 ' + to.x.toFixed(2) + ' ' + to.y.toFixed(2) + ' Z';
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
function paintPie(counts) {
|
|
352
|
+
var total = 0;
|
|
353
|
+
BANDS.forEach(function (band) { total += counts[band[0]]; });
|
|
354
|
+
var svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
|
|
355
|
+
svg.setAttribute('viewBox', '0 0 220 220');
|
|
356
|
+
svg.setAttribute('class', 'pie');
|
|
357
|
+
svg.setAttribute('role', 'img');
|
|
358
|
+
svg.setAttribute('aria-label', 'Tests by duration');
|
|
359
|
+
if (!total) {
|
|
360
|
+
var empty = document.createElementNS('http://www.w3.org/2000/svg', 'circle');
|
|
361
|
+
empty.setAttribute('cx', '110');
|
|
362
|
+
empty.setAttribute('cy', '110');
|
|
363
|
+
empty.setAttribute('r', '96');
|
|
364
|
+
empty.setAttribute('fill', 'rgba(255,255,255,0.08)');
|
|
365
|
+
svg.appendChild(empty);
|
|
366
|
+
return svg;
|
|
367
|
+
}
|
|
368
|
+
var angle = 0;
|
|
369
|
+
var full = null;
|
|
370
|
+
BANDS.forEach(function (band, index) {
|
|
371
|
+
var count = counts[band[0]];
|
|
372
|
+
if (!count) return;
|
|
373
|
+
var sweep = (count / total) * 360;
|
|
374
|
+
if (sweep >= 359.99) {
|
|
375
|
+
full = index;
|
|
376
|
+
angle += sweep;
|
|
377
|
+
return;
|
|
378
|
+
}
|
|
379
|
+
var path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
|
380
|
+
path.setAttribute('d', piePath(angle, angle + sweep));
|
|
381
|
+
path.setAttribute('fill', CHART_COLORS[index]);
|
|
382
|
+
path.setAttribute('data-slice', band[0]);
|
|
383
|
+
path.setAttribute('class', 'slice');
|
|
384
|
+
svg.appendChild(path);
|
|
385
|
+
angle += sweep;
|
|
386
|
+
});
|
|
387
|
+
if (full !== null) {
|
|
388
|
+
var circle = document.createElementNS('http://www.w3.org/2000/svg', 'circle');
|
|
389
|
+
circle.setAttribute('cx', '110');
|
|
390
|
+
circle.setAttribute('cy', '110');
|
|
391
|
+
circle.setAttribute('r', '96');
|
|
392
|
+
circle.setAttribute('fill', CHART_COLORS[full]);
|
|
393
|
+
circle.setAttribute('data-slice', BANDS[full][0]);
|
|
394
|
+
circle.setAttribute('class', 'slice');
|
|
395
|
+
svg.appendChild(circle);
|
|
396
|
+
}
|
|
397
|
+
return svg;
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
function paintDuration() {
|
|
401
|
+
var host = document.getElementById('duration');
|
|
402
|
+
if (!host) return;
|
|
403
|
+
var counts = bandCounts();
|
|
327
404
|
var max = 1;
|
|
328
405
|
BANDS.forEach(function (band) { max = Math.max(max, counts[band[0]]); });
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
406
|
+
var style = chartStyle();
|
|
407
|
+
var nodes = [];
|
|
408
|
+
if (style !== 'bar') nodes.push(paintPie(counts));
|
|
409
|
+
if (style !== 'pie') {
|
|
410
|
+
nodes.push(el('div', { class: 'bars' }, BANDS.map(function (band, index) {
|
|
411
|
+
var fillBar = el('span', { class: 'band-fill' });
|
|
412
|
+
fillBar.style.width = Math.round((counts[band[0]] / max) * 100) + '%';
|
|
413
|
+
fillBar.style.background = CHART_COLORS[index];
|
|
414
|
+
return el('button', {
|
|
415
|
+
class: 'band',
|
|
416
|
+
type: 'button',
|
|
417
|
+
'data-band': band[0],
|
|
418
|
+
'aria-pressed': state.band === band[0] ? 'true' : 'false',
|
|
419
|
+
}, [
|
|
420
|
+
el('span', { class: 'swatch' }),
|
|
421
|
+
el('span', { class: 'band-label' }, [band[1]]),
|
|
422
|
+
el('span', { class: 'n' }, [String(counts[band[0]])]),
|
|
423
|
+
el('span', { class: 'band-track' }, [fillBar]),
|
|
424
|
+
]);
|
|
425
|
+
})));
|
|
426
|
+
} else {
|
|
427
|
+
nodes.push(el('div', { class: 'bars' }, BANDS.map(function (band, index) {
|
|
428
|
+
return el('button', {
|
|
429
|
+
class: 'band band-key',
|
|
430
|
+
type: 'button',
|
|
431
|
+
'data-band': band[0],
|
|
432
|
+
'aria-pressed': state.band === band[0] ? 'true' : 'false',
|
|
433
|
+
}, [
|
|
434
|
+
el('span', { class: 'swatch' }),
|
|
435
|
+
el('span', { class: 'band-label' }, [band[1]]),
|
|
436
|
+
el('span', { class: 'n' }, [String(counts[band[0]])]),
|
|
437
|
+
]);
|
|
438
|
+
})));
|
|
439
|
+
}
|
|
440
|
+
fill(host, nodes);
|
|
441
|
+
host.querySelectorAll('.swatch').forEach(function (swatch, index) {
|
|
442
|
+
swatch.style.background = CHART_COLORS[index % CHART_COLORS.length];
|
|
443
|
+
});
|
|
343
444
|
}
|
|
344
445
|
|
|
345
446
|
function applyOverview() {
|
|
@@ -525,6 +626,16 @@
|
|
|
525
626
|
});
|
|
526
627
|
}
|
|
527
628
|
|
|
629
|
+
function keptTag(tag) {
|
|
630
|
+
var pattern = typeof data.ignoreTags === 'string' ? data.ignoreTags : '^@?HC2T-';
|
|
631
|
+
if (!pattern) return true;
|
|
632
|
+
try {
|
|
633
|
+
return !new RegExp(pattern, 'i').test(tag);
|
|
634
|
+
} catch (error) {
|
|
635
|
+
return true;
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
|
|
528
639
|
function uniqueValues(pick) {
|
|
529
640
|
var seen = {};
|
|
530
641
|
data.tests.forEach(function (test) {
|
|
@@ -538,7 +649,7 @@
|
|
|
538
649
|
function paintTags() {
|
|
539
650
|
var host = document.getElementById('tags');
|
|
540
651
|
if (!host) return;
|
|
541
|
-
var tags = uniqueValues(function (test) { return test.tags || []; });
|
|
652
|
+
var tags = uniqueValues(function (test) { return (test.tags || []).filter(keptTag); });
|
|
542
653
|
var projects = uniqueValues(function (test) { return test.project ? [test.project] : []; });
|
|
543
654
|
var nodes = [];
|
|
544
655
|
if (tags.length) {
|
|
@@ -546,7 +657,7 @@
|
|
|
546
657
|
nodes.push(chip('tag-btn', 'all', 'All', state.tag));
|
|
547
658
|
tags.forEach(function (tag) { nodes.push(chip('tag-btn', tag, tag, state.tag)); });
|
|
548
659
|
}
|
|
549
|
-
if (projects.length > 1) {
|
|
660
|
+
if (data.showProjectFilter === true && projects.length > 1) {
|
|
550
661
|
nodes.push(el('span', { class: 'order-label' }, ['Project']));
|
|
551
662
|
nodes.push(chip('project-btn', 'all', 'All', state.projectFilter));
|
|
552
663
|
projects.forEach(function (project) { nodes.push(chip('project-btn', project, project, state.projectFilter)); });
|
|
@@ -932,7 +1043,7 @@
|
|
|
932
1043
|
(test.attempts || []).forEach(function (attempt, index) {
|
|
933
1044
|
(attempt.attachments || []).forEach(function (file) {
|
|
934
1045
|
if (file.kind === 'image') return;
|
|
935
|
-
var label = file.kind === 'trace' ? 'Trace' : file.kind === 'video' ? 'Video' :
|
|
1046
|
+
var label = file.kind === 'trace' ? 'Trace' : file.kind === 'video' ? 'Video' : 'File';
|
|
936
1047
|
var line = [el('span', { class: 'file-kind' }, [label])];
|
|
937
1048
|
if ((test.attempts || []).length > 1) line.push(el('span', { class: 'now-file' }, ['Attempt ' + (index + 1)]));
|
|
938
1049
|
if (file.omitted || !safeSrc(file.path)) {
|
|
@@ -941,7 +1052,8 @@
|
|
|
941
1052
|
line.push(el('video', { class: 'video', controls: 'true', preload: 'metadata', src: safeSrc(file.path) }));
|
|
942
1053
|
} else {
|
|
943
1054
|
var href = safeSrc(file.path);
|
|
944
|
-
|
|
1055
|
+
var linkText = file.kind === 'trace' ? 'Download' : (file.name || 'Download');
|
|
1056
|
+
line.push(el('a', { class: 'file-link', href: href, download: '' }, [linkText]));
|
|
945
1057
|
if (file.kind === 'trace') {
|
|
946
1058
|
line.push(el('span', { class: 'now-file' }, ['npx playwright show-trace ' + href]));
|
|
947
1059
|
}
|
|
@@ -981,9 +1093,10 @@
|
|
|
981
1093
|
applyOverview();
|
|
982
1094
|
return;
|
|
983
1095
|
}
|
|
984
|
-
var band = target.closest('.band');
|
|
1096
|
+
var band = target.closest('.band') || target.closest('.slice');
|
|
985
1097
|
if (band) {
|
|
986
|
-
|
|
1098
|
+
var bandId = band.dataset.band || band.getAttribute('data-slice');
|
|
1099
|
+
state.band = state.band === bandId ? 'all' : bandId;
|
|
987
1100
|
state.order = state.band === 'all' ? state.order : 'slowest';
|
|
988
1101
|
state.listLimit = 200;
|
|
989
1102
|
keepSelectionInFilter();
|
|
@@ -1360,12 +1473,19 @@
|
|
|
1360
1473
|
return value;
|
|
1361
1474
|
}
|
|
1362
1475
|
|
|
1476
|
+
function commitText() {
|
|
1477
|
+
var row = (data.info || []).find(function (item) { return item.label === 'Commit'; });
|
|
1478
|
+
return row && row.value ? row.value : '';
|
|
1479
|
+
}
|
|
1480
|
+
|
|
1363
1481
|
function metaBits() {
|
|
1364
1482
|
var bits = [];
|
|
1365
|
-
if (data.projectName) bits.push(data.projectName);
|
|
1366
|
-
if (Array.isArray(data.projects) && data.projects.length) bits.push(data.projects.join(', '));
|
|
1483
|
+
if (data.showProjects === true && data.projectName) bits.push(data.projectName);
|
|
1484
|
+
if (data.showProjects === true && Array.isArray(data.projects) && data.projects.length) bits.push(data.projects.join(', '));
|
|
1367
1485
|
if (data.startTime) bits.push(formatWhen(data.startTime));
|
|
1368
|
-
|
|
1486
|
+
var sha = commitText();
|
|
1487
|
+
if (sha) bits.push(sha);
|
|
1488
|
+
if (data.showPlaywrightVersion === true && data.playwrightVersion) bits.push('Playwright ' + data.playwrightVersion);
|
|
1369
1489
|
if (data.shard) bits.push('Shard ' + data.shard);
|
|
1370
1490
|
return bits;
|
|
1371
1491
|
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "playwright-reborn",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "A Playwright reporter that writes one self-contained HTML report when the run finishes.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
7
7
|
"exports": {
|
|
8
8
|
".": {
|
|
9
9
|
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"require": "./dist/index.js",
|
|
10
12
|
"default": "./dist/index.js"
|
|
11
13
|
},
|
|
12
14
|
"./fixture": {
|
|
@@ -21,7 +23,11 @@
|
|
|
21
23
|
"!dist/**/*.test.js",
|
|
22
24
|
"!dist/**/*.test.d.ts",
|
|
23
25
|
"!dist/**/*.test.js.map",
|
|
24
|
-
"
|
|
26
|
+
"!dist/fixture-types.js",
|
|
27
|
+
"!dist/fixture-types.d.ts",
|
|
28
|
+
"!dist/fixture-types.js.map",
|
|
29
|
+
"README.md",
|
|
30
|
+
"CHANGELOG.md"
|
|
25
31
|
],
|
|
26
32
|
"scripts": {
|
|
27
33
|
"build": "tsc -p tsconfig.json && node scripts/copy-assets.mjs",
|
package/dist/fixture-types.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function typedStep(): Promise<number>;
|
package/dist/fixture-types.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.typedStep = typedStep;
|
|
4
|
-
const fixture_1 = require("./fixture");
|
|
5
|
-
async function typedStep() {
|
|
6
|
-
const value = await (0, fixture_1.step)('x', async () => 1);
|
|
7
|
-
return value;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=fixture-types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fixture-types.js","sourceRoot":"","sources":["../src/fixture-types.ts"],"names":[],"mappings":";;AAEA,8BAGC;AALD,uCAAiC;AAE1B,KAAK,UAAU,SAAS;IAC7B,MAAM,KAAK,GAAG,MAAM,IAAA,cAAI,EAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC;AACf,CAAC"}
|