@allurereport/web-summary 3.0.0-beta.11
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/.babelrc.js +22 -0
- package/.eslintrc.cjs +18 -0
- package/README.md +0 -0
- package/dist/app-af9981fc.js +2 -0
- package/dist/app-af9981fc.js.LICENSE.txt +8 -0
- package/dist/manifest.json +3 -0
- package/package.json +88 -0
- package/postcss.config.js +5 -0
- package/src/assets/scss/_common.scss +143 -0
- package/src/assets/scss/day.scss +51 -0
- package/src/assets/scss/fonts.scss +3 -0
- package/src/assets/scss/index.scss +7 -0
- package/src/assets/scss/night.scss +61 -0
- package/src/assets/scss/palette.scss +393 -0
- package/src/assets/scss/theme.scss +119 -0
- package/src/assets/scss/vars.scss +8 -0
- package/src/components/EmptyPlaceholder/index.tsx +24 -0
- package/src/components/EmptyPlaceholder/styles.scss +25 -0
- package/src/components/Footer/index.tsx +21 -0
- package/src/components/Footer/styles.scss +23 -0
- package/src/components/Header/index.tsx +15 -0
- package/src/components/Header/styles.scss +8 -0
- package/src/components/LanguagePicker/index.tsx +40 -0
- package/src/components/MetadataRow/index.tsx +20 -0
- package/src/components/MetadataRow/styles.scss +9 -0
- package/src/components/ReportCard/index.tsx +70 -0
- package/src/components/ReportCard/styles.scss +49 -0
- package/src/components/ThemeButton/index.tsx +20 -0
- package/src/i18n/constants.ts +124 -0
- package/src/i18n/locales/az.json +14 -0
- package/src/i18n/locales/de.json +14 -0
- package/src/i18n/locales/en.json +14 -0
- package/src/i18n/locales/es.json +14 -0
- package/src/i18n/locales/fr.json +14 -0
- package/src/i18n/locales/he.json +14 -0
- package/src/i18n/locales/hy.json +13 -0
- package/src/i18n/locales/it.json +14 -0
- package/src/i18n/locales/ja.json +14 -0
- package/src/i18n/locales/ka.json +14 -0
- package/src/i18n/locales/kr.json +14 -0
- package/src/i18n/locales/nl.json +14 -0
- package/src/i18n/locales/pl.json +14 -0
- package/src/i18n/locales/pt.json +14 -0
- package/src/i18n/locales/ru.json +14 -0
- package/src/i18n/locales/sv.json +14 -0
- package/src/i18n/locales/tr.json +14 -0
- package/src/i18n/locales/zh.json +14 -0
- package/src/index.html +89 -0
- package/src/index.tsx +59 -0
- package/src/stores/index.ts +2 -0
- package/src/stores/locale.ts +54 -0
- package/src/stores/theme.ts +29 -0
- package/src/styles.scss +50 -0
- package/src/types/globals.d.ts +13 -0
- package/src/types/window.d.ts +10 -0
- package/tsconfig.json +27 -0
- package/types.d.ts +99 -0
- package/webpack.config.js +109 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Text } from "@allurereport/web-components";
|
|
2
|
+
import type { FunctionalComponent } from "preact";
|
|
3
|
+
import * as styles from "./styles.scss";
|
|
4
|
+
|
|
5
|
+
export type MetadataRowProps = {
|
|
6
|
+
label: string;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export const MetadataRow: FunctionalComponent<MetadataRowProps> = ({ label, children }) => {
|
|
10
|
+
return (
|
|
11
|
+
<div className={styles["metadata-row"]}>
|
|
12
|
+
<Text type={"ui"} size={"s"} bold className={styles.label}>
|
|
13
|
+
{label}
|
|
14
|
+
</Text>
|
|
15
|
+
<Text type={"ui"} size={"s"}>
|
|
16
|
+
{children}
|
|
17
|
+
</Text>
|
|
18
|
+
</div>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { type Statistic, type TestStatus, formatDuration } from "@allurereport/core-api";
|
|
2
|
+
import { Heading, StatusLabel, SuccessRatePieChart, Text, getChartData } from "@allurereport/web-components";
|
|
3
|
+
import type { FunctionalComponent } from "preact";
|
|
4
|
+
import { MetadataRow } from "@/components/MetadataRow";
|
|
5
|
+
import { useI18n } from "@/stores";
|
|
6
|
+
import * as styles from "./styles.scss";
|
|
7
|
+
|
|
8
|
+
export type ReportCardProps = {
|
|
9
|
+
href: string;
|
|
10
|
+
name: string;
|
|
11
|
+
status: TestStatus;
|
|
12
|
+
stats: Statistic;
|
|
13
|
+
duration: number;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const ReportCard: FunctionalComponent<ReportCardProps> = ({ href, status, stats, name, duration }) => {
|
|
17
|
+
const { t } = useI18n("summary");
|
|
18
|
+
const { percentage, slices } = getChartData(stats);
|
|
19
|
+
const formattedDuration = formatDuration(duration);
|
|
20
|
+
|
|
21
|
+
return (
|
|
22
|
+
<a
|
|
23
|
+
data-testid={"summary-report-card"}
|
|
24
|
+
className={styles["report-card"]}
|
|
25
|
+
href={href}
|
|
26
|
+
target={"_blank"}
|
|
27
|
+
rel="noreferrer"
|
|
28
|
+
>
|
|
29
|
+
<div className={styles["report-card-chart-wrapper"]}>
|
|
30
|
+
<SuccessRatePieChart className={styles["report-card-chart"]} slices={slices} percentage={percentage} />
|
|
31
|
+
</div>
|
|
32
|
+
<div>
|
|
33
|
+
<div className={styles["report-card-title"]}>
|
|
34
|
+
<Heading tag={"h2"} size={"s"}>
|
|
35
|
+
{name}
|
|
36
|
+
</Heading>
|
|
37
|
+
</div>
|
|
38
|
+
<div className={styles["report-card-status"]}>
|
|
39
|
+
<StatusLabel status={status}>{t(status)}</StatusLabel>
|
|
40
|
+
<Text type={"ui"} size={"s"}>
|
|
41
|
+
{t("in")}
|
|
42
|
+
</Text>
|
|
43
|
+
<Text type={"ui"} size={"s"} bold>
|
|
44
|
+
{formattedDuration}
|
|
45
|
+
</Text>
|
|
46
|
+
</div>
|
|
47
|
+
<div className={styles["report-card-metadata"]}>
|
|
48
|
+
<li>
|
|
49
|
+
<MetadataRow label={t("passed")}>{stats?.passed ?? 0}</MetadataRow>
|
|
50
|
+
</li>
|
|
51
|
+
<li>
|
|
52
|
+
<MetadataRow label={t("failed")}>{stats?.failed ?? 0}</MetadataRow>
|
|
53
|
+
</li>
|
|
54
|
+
<li>
|
|
55
|
+
<MetadataRow label={t("broken")}>{stats?.broken ?? 0}</MetadataRow>
|
|
56
|
+
</li>
|
|
57
|
+
<li>
|
|
58
|
+
<MetadataRow label={t("skipped")}>{stats?.skipped ?? 0}</MetadataRow>
|
|
59
|
+
</li>
|
|
60
|
+
<li>
|
|
61
|
+
<MetadataRow label={t("unknown")}>{stats?.unknown ?? 0}</MetadataRow>
|
|
62
|
+
</li>
|
|
63
|
+
<li>
|
|
64
|
+
<MetadataRow label={t("total")}>{stats?.total ?? 0}</MetadataRow>
|
|
65
|
+
</li>
|
|
66
|
+
</div>
|
|
67
|
+
</div>
|
|
68
|
+
</a>
|
|
69
|
+
);
|
|
70
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
.report-card {
|
|
2
|
+
display: grid;
|
|
3
|
+
grid-template-columns: 1fr 2fr;
|
|
4
|
+
gap: 0 16px;
|
|
5
|
+
padding: 16px;
|
|
6
|
+
height: 100%;
|
|
7
|
+
text-decoration: none;
|
|
8
|
+
box-shadow: var(--shadow-small);
|
|
9
|
+
background: var(--bg-base-primary);
|
|
10
|
+
border-radius: 12px;
|
|
11
|
+
cursor: pointer;
|
|
12
|
+
|
|
13
|
+
&:hover {
|
|
14
|
+
box-shadow: none;
|
|
15
|
+
transition: box-shadow 0.2s;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.report-card-chart {
|
|
20
|
+
position: absolute;
|
|
21
|
+
top: 0;
|
|
22
|
+
left: 0;
|
|
23
|
+
width: 100%;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.report-card-chart-wrapper {
|
|
27
|
+
position: relative;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.report-card-title {
|
|
31
|
+
margin-bottom: 2px;
|
|
32
|
+
color: var(--on-text-secondary);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.report-card-status {
|
|
36
|
+
display: flex;
|
|
37
|
+
align-items: center;
|
|
38
|
+
gap: 0 4px;
|
|
39
|
+
margin-bottom: 4px;
|
|
40
|
+
color: var(--on-text-secondary);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.report-card-metadata {
|
|
44
|
+
& > li {
|
|
45
|
+
&:not(:last-child) {
|
|
46
|
+
margin-bottom: 2px;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IconButton, allureIcons } from "@allurereport/web-components";
|
|
2
|
+
import { useEffect } from "preact/hooks";
|
|
3
|
+
import { getTheme, themeStore, toggleTheme } from "@/stores/theme";
|
|
4
|
+
|
|
5
|
+
export const ThemeButton = () => {
|
|
6
|
+
const theme = themeStore.value;
|
|
7
|
+
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
getTheme();
|
|
10
|
+
}, []);
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<IconButton
|
|
14
|
+
onClick={toggleTheme}
|
|
15
|
+
style="ghost"
|
|
16
|
+
icon={theme === "light" ? allureIcons.lineShapesMoon : allureIcons.lineShapesSun}
|
|
17
|
+
size="s"
|
|
18
|
+
/>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
export const AVAILABLE_LOCALES = [
|
|
2
|
+
"en",
|
|
3
|
+
"ru",
|
|
4
|
+
"pl",
|
|
5
|
+
"es",
|
|
6
|
+
"pt",
|
|
7
|
+
"de",
|
|
8
|
+
"hy",
|
|
9
|
+
"az",
|
|
10
|
+
"fr",
|
|
11
|
+
"it",
|
|
12
|
+
"ja",
|
|
13
|
+
"he",
|
|
14
|
+
"ka",
|
|
15
|
+
"kr",
|
|
16
|
+
"nl",
|
|
17
|
+
"sv",
|
|
18
|
+
"tr",
|
|
19
|
+
"zh",
|
|
20
|
+
] as const;
|
|
21
|
+
|
|
22
|
+
export const DEFAULT_LOCALE = "en";
|
|
23
|
+
|
|
24
|
+
export type LangLocale = (typeof AVAILABLE_LOCALES)[number];
|
|
25
|
+
|
|
26
|
+
export const LANG_LOCALE: Record<
|
|
27
|
+
LangLocale,
|
|
28
|
+
{
|
|
29
|
+
short: string;
|
|
30
|
+
full: string;
|
|
31
|
+
iso: string;
|
|
32
|
+
}
|
|
33
|
+
> = {
|
|
34
|
+
en: {
|
|
35
|
+
short: "Eng",
|
|
36
|
+
full: "English",
|
|
37
|
+
iso: "en-US",
|
|
38
|
+
},
|
|
39
|
+
ru: {
|
|
40
|
+
short: "Ру",
|
|
41
|
+
full: "Русский",
|
|
42
|
+
iso: "ru-RU",
|
|
43
|
+
},
|
|
44
|
+
pl: {
|
|
45
|
+
short: "Pl",
|
|
46
|
+
full: "Polski",
|
|
47
|
+
iso: "pl-PL",
|
|
48
|
+
},
|
|
49
|
+
es: {
|
|
50
|
+
short: "Es",
|
|
51
|
+
full: "Español",
|
|
52
|
+
iso: "es-ES",
|
|
53
|
+
},
|
|
54
|
+
pt: {
|
|
55
|
+
short: "Pt",
|
|
56
|
+
full: "Português",
|
|
57
|
+
iso: "pt-PT",
|
|
58
|
+
},
|
|
59
|
+
de: {
|
|
60
|
+
short: "De",
|
|
61
|
+
full: "Deutsch",
|
|
62
|
+
iso: "de-DE",
|
|
63
|
+
},
|
|
64
|
+
hy: {
|
|
65
|
+
short: "Hy",
|
|
66
|
+
full: "Հայերեն",
|
|
67
|
+
iso: "hy-AM",
|
|
68
|
+
},
|
|
69
|
+
az: {
|
|
70
|
+
short: "Az",
|
|
71
|
+
full: "Azərbaycan",
|
|
72
|
+
iso: "az-AZ",
|
|
73
|
+
},
|
|
74
|
+
fr: {
|
|
75
|
+
short: "Fr",
|
|
76
|
+
full: "Français",
|
|
77
|
+
iso: "fr-FR",
|
|
78
|
+
},
|
|
79
|
+
it: {
|
|
80
|
+
short: "It",
|
|
81
|
+
full: "Italiano",
|
|
82
|
+
iso: "it-IT",
|
|
83
|
+
},
|
|
84
|
+
ja: {
|
|
85
|
+
short: "Ja",
|
|
86
|
+
full: "日本語",
|
|
87
|
+
iso: "ja-JP",
|
|
88
|
+
},
|
|
89
|
+
he: {
|
|
90
|
+
short: "He",
|
|
91
|
+
full: "עברית",
|
|
92
|
+
iso: "he-IL",
|
|
93
|
+
},
|
|
94
|
+
ka: {
|
|
95
|
+
short: "Ka",
|
|
96
|
+
full: "ქართული",
|
|
97
|
+
iso: "ka-GE",
|
|
98
|
+
},
|
|
99
|
+
kr: {
|
|
100
|
+
short: "Kr",
|
|
101
|
+
full: "한국어",
|
|
102
|
+
iso: "kr-KR",
|
|
103
|
+
},
|
|
104
|
+
nl: {
|
|
105
|
+
short: "Nl",
|
|
106
|
+
full: "Nederlands",
|
|
107
|
+
iso: "nl-NL",
|
|
108
|
+
},
|
|
109
|
+
sv: {
|
|
110
|
+
short: "Sv",
|
|
111
|
+
full: "Svenska",
|
|
112
|
+
iso: "sv-SE",
|
|
113
|
+
},
|
|
114
|
+
tr: {
|
|
115
|
+
short: "Tr",
|
|
116
|
+
full: "Türkçe",
|
|
117
|
+
iso: "tr-TR",
|
|
118
|
+
},
|
|
119
|
+
zh: {
|
|
120
|
+
short: "Zh",
|
|
121
|
+
full: "中文",
|
|
122
|
+
iso: "zh-CN",
|
|
123
|
+
},
|
|
124
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"summary": {
|
|
3
|
+
"passed": "bestanden",
|
|
4
|
+
"failed": "fehlgeschlagen",
|
|
5
|
+
"broken": "defekt",
|
|
6
|
+
"skipped": "übersprungen",
|
|
7
|
+
"unknown": "unbekannt",
|
|
8
|
+
"total": "gesamt",
|
|
9
|
+
"in": "in"
|
|
10
|
+
},
|
|
11
|
+
"empty": {
|
|
12
|
+
"no-reports": "Keine Berichte gefunden"
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"summary": {
|
|
3
|
+
"passed": "წარმატებული",
|
|
4
|
+
"failed": "წარუმატებელი",
|
|
5
|
+
"broken": "დამტვრეული",
|
|
6
|
+
"skipped": "გამოტოვებული",
|
|
7
|
+
"unknown": "უცნობი",
|
|
8
|
+
"total": "ჯამი",
|
|
9
|
+
"in": "ში"
|
|
10
|
+
},
|
|
11
|
+
"empty": {
|
|
12
|
+
"no-reports": "არ მოიძებნა არცერთი ანგარიში"
|
|
13
|
+
}
|
|
14
|
+
}
|
package/src/index.html
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Allure Report</title>
|
|
5
|
+
<link rel="icon" href="data:image/svg+xml,%3Csvg width='32' height='32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M22.232 4.662a3.6 3.6 0 0 1 5.09.035c2.855 2.894 4.662 6.885 4.662 11.295a3.6 3.6 0 0 1-7.2 0c0-2.406-.981-4.61-2.587-6.24a3.6 3.6 0 0 1 .035-5.09Z' fill='url(%23a)'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.392 3.6a3.6 3.6 0 0 1 3.6-3.6c4.41 0 8.401 1.807 11.296 4.662a3.6 3.6 0 1 1-5.056 5.126C20.602 8.18 18.398 7.2 15.992 7.2a3.6 3.6 0 0 1-3.6-3.6Z' fill='url(%23b)'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 15.992C0 7.157 7.157 0 15.992 0a3.6 3.6 0 0 1 0 7.2A8.789 8.789 0 0 0 7.2 15.992c0 2.406.981 4.61 2.588 6.24a3.6 3.6 0 0 1-5.126 5.056C1.807 24.393 0 20.402 0 15.992Z' fill='url(%23c)'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.661 22.232a3.6 3.6 0 0 1 5.091-.035c1.63 1.606 3.834 2.587 6.24 2.587a3.6 3.6 0 0 1 0 7.2c-4.41 0-8.401-1.807-11.295-4.661a3.6 3.6 0 0 1-.036-5.091Z' fill='url(%23d)'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M28.384 12.392a3.6 3.6 0 0 1 3.6 3.6c0 8.835-7.157 15.992-15.992 15.992a3.6 3.6 0 0 1 0-7.2 8.789 8.789 0 0 0 8.792-8.792 3.6 3.6 0 0 1 3.6-3.6Z' fill='url(%23e)'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M28.385 12.392a3.6 3.6 0 0 1 3.6 3.6v12.392a3.6 3.6 0 0 1-7.2 0V15.992a3.6 3.6 0 0 1 3.6-3.6Z' fill='url(%23f)'/%3E%3Cg clip-path='url(%23g)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M22.232 4.662a3.6 3.6 0 0 1 5.091.035c2.855 2.894 4.662 6.885 4.662 11.295a3.6 3.6 0 0 1-7.2 0c0-2.406-.982-4.61-2.588-6.24a3.6 3.6 0 0 1 .035-5.09Z' fill='url(%23h)'/%3E%3C/g%3E%3Cdefs%3E%3ClinearGradient id='a' x1='26.4' y1='9.6' x2='28.8' y2='15' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%237E22CE'/%3E%3Cstop offset='1' stop-color='%238B5CF6'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='26.8' y1='9.4' x2='17.8' y2='3.6' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23EF4444'/%3E%3Cstop offset='1' stop-color='%23DC2626'/%3E%3C/linearGradient%3E%3ClinearGradient id='c' x1='3.6' y1='14' x2='5.4' y2='24.8' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%2322C55E'/%3E%3Cstop offset='1' stop-color='%2315803D'/%3E%3C/linearGradient%3E%3ClinearGradient id='d' x1='4.8' y1='22.2' x2='14.4' y2='29.2' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%2394A3B8'/%3E%3Cstop offset='.958' stop-color='%2364748B'/%3E%3Cstop offset='1' stop-color='%2364748B'/%3E%3C/linearGradient%3E%3ClinearGradient id='e' x1='28.4' y1='22.173' x2='22.188' y2='28.384' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23D97706'/%3E%3Cstop offset='1' stop-color='%23FBBF24'/%3E%3C/linearGradient%3E%3ClinearGradient id='f' x1='29.2' y1='54.4' x2='30.626' y2='54.256' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23FBBF24'/%3E%3Cstop offset='1' stop-color='%23FBBF24'/%3E%3C/linearGradient%3E%3ClinearGradient id='h' x1='26.4' y1='9.6' x2='28.8' y2='15' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%237E22CE'/%3E%3Cstop offset='1' stop-color='%238B5CF6'/%3E%3C/linearGradient%3E%3CclipPath id='g'%3E%3Cpath fill='%23fff' transform='translate(24.8 12)' d='M0 0h7.2v8H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E" />
|
|
6
|
+
<base href="http://localhost:8080" />
|
|
7
|
+
</head>
|
|
8
|
+
<body>
|
|
9
|
+
<div id="app"></div>
|
|
10
|
+
<script>
|
|
11
|
+
window.allure = window.allure || {};
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<script>
|
|
15
|
+
const { origin, pathname } = window.location;
|
|
16
|
+
const url = new URL(pathname, origin);
|
|
17
|
+
const baseEl = document.createElement("base");
|
|
18
|
+
|
|
19
|
+
baseEl.href = url.toString();
|
|
20
|
+
|
|
21
|
+
window.document.head.appendChild(baseEl);
|
|
22
|
+
</script>
|
|
23
|
+
<script>
|
|
24
|
+
window.reportSummaries = [
|
|
25
|
+
{
|
|
26
|
+
name: "First sample report",
|
|
27
|
+
href: "#",
|
|
28
|
+
stats: {
|
|
29
|
+
passed: 100,
|
|
30
|
+
failed: 31,
|
|
31
|
+
broken: 5,
|
|
32
|
+
skipped: 1,
|
|
33
|
+
unknown: 2,
|
|
34
|
+
total: 139
|
|
35
|
+
},
|
|
36
|
+
duration: 1240812,
|
|
37
|
+
status: "failed",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: "Second sample report with longer title",
|
|
41
|
+
href: "#",
|
|
42
|
+
stats: {
|
|
43
|
+
passed: 67,
|
|
44
|
+
total: 67
|
|
45
|
+
},
|
|
46
|
+
duration: 31290,
|
|
47
|
+
status: "passed",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: "Third report",
|
|
51
|
+
href: "#",
|
|
52
|
+
stats: {
|
|
53
|
+
passed: 12,
|
|
54
|
+
broken: 48,
|
|
55
|
+
total: 60
|
|
56
|
+
},
|
|
57
|
+
duration: 512341,
|
|
58
|
+
status: "broken",
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "Fourth report",
|
|
62
|
+
href: "#",
|
|
63
|
+
stats: {
|
|
64
|
+
passed: 10,
|
|
65
|
+
unknown: 4,
|
|
66
|
+
broken: 1,
|
|
67
|
+
total: 15
|
|
68
|
+
},
|
|
69
|
+
duration: 12341,
|
|
70
|
+
status: "broken",
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: "Fifth report with a very long title that should not be truncated and should be displayed in full",
|
|
74
|
+
href: "#",
|
|
75
|
+
stats: {
|
|
76
|
+
skipped: 1,
|
|
77
|
+
unknown: 1,
|
|
78
|
+
total: 2
|
|
79
|
+
},
|
|
80
|
+
duration: 0,
|
|
81
|
+
status: "unknown",
|
|
82
|
+
},
|
|
83
|
+
]
|
|
84
|
+
</script>
|
|
85
|
+
<script async>
|
|
86
|
+
window.allureReportDataReady = true;
|
|
87
|
+
</script>
|
|
88
|
+
</body>
|
|
89
|
+
</html>
|