creevey 0.10.0-beta.9 → 0.10.0-rc.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/AUTHORS +2 -0
- package/CHANGELOG.md +281 -0
- package/README.md +19 -41
- package/dist/client/addon/components/Addon.js +18 -8
- package/dist/client/addon/components/Addon.js.map +1 -1
- package/dist/client/addon/components/Panel.js +2 -2
- package/dist/client/addon/components/Panel.js.map +1 -1
- package/dist/client/addon/components/TestSelect.js +2 -2
- package/dist/client/addon/components/TestSelect.js.map +1 -1
- package/dist/client/addon/components/Tools.js +19 -9
- package/dist/client/addon/components/Tools.js.map +1 -1
- package/dist/client/addon/controller.d.ts +1 -1
- package/dist/client/addon/controller.js +3 -3
- package/dist/client/addon/controller.js.map +1 -1
- package/dist/client/addon/decorator.d.ts +1 -1
- package/dist/client/addon/makeDecorator.d.ts +9 -0
- package/dist/client/addon/makeDecorator.js +48 -0
- package/dist/client/addon/makeDecorator.js.map +1 -0
- package/dist/client/addon/manager.js +38 -39
- package/dist/client/addon/manager.js.map +1 -1
- package/dist/client/addon/preset.d.ts +0 -1
- package/dist/client/addon/preset.js +3 -2
- package/dist/client/addon/preset.js.map +1 -1
- package/dist/client/addon/preview.d.ts +1 -1
- package/dist/client/addon/withCreevey.d.ts +5 -3
- package/dist/client/addon/withCreevey.js +5 -20
- package/dist/client/addon/withCreevey.js.map +1 -1
- package/dist/client/shared/components/ImagesView/BlendView.d.ts +2 -2
- package/dist/client/shared/components/ImagesView/BlendView.js +18 -8
- package/dist/client/shared/components/ImagesView/BlendView.js.map +1 -1
- package/dist/client/shared/components/ImagesView/ImagesView.js +1 -1
- package/dist/client/shared/components/ImagesView/ImagesView.js.map +1 -1
- package/dist/client/shared/components/ImagesView/SideBySideView.d.ts +2 -2
- package/dist/client/shared/components/ImagesView/SideBySideView.js +19 -9
- package/dist/client/shared/components/ImagesView/SideBySideView.js.map +1 -1
- package/dist/client/shared/components/ImagesView/SlideView.d.ts +2 -2
- package/dist/client/shared/components/ImagesView/SlideView.js +19 -9
- package/dist/client/shared/components/ImagesView/SlideView.js.map +1 -1
- package/dist/client/shared/components/ImagesView/SwapView.d.ts +2 -2
- package/dist/client/shared/components/ImagesView/SwapView.js +19 -9
- package/dist/client/shared/components/ImagesView/SwapView.js.map +1 -1
- package/dist/client/shared/components/ImagesView/common.d.ts +1 -1
- package/dist/client/shared/components/PageFooter/PageFooter.js +1 -1
- package/dist/client/shared/components/PageFooter/PageFooter.js.map +1 -1
- package/dist/client/shared/components/PageFooter/Paging.js +1 -1
- package/dist/client/shared/components/PageFooter/Paging.js.map +1 -1
- package/dist/client/shared/components/PageHeader/ImagePreview.d.ts +2 -2
- package/dist/client/shared/components/PageHeader/ImagePreview.js +1 -1
- package/dist/client/shared/components/PageHeader/ImagePreview.js.map +1 -1
- package/dist/client/shared/components/PageHeader/PageHeader.js +34 -13
- package/dist/client/shared/components/PageHeader/PageHeader.js.map +1 -1
- package/dist/client/shared/components/ResultsPage.d.ts +2 -2
- package/dist/client/shared/components/ResultsPage.js +22 -10
- package/dist/client/shared/components/ResultsPage.js.map +1 -1
- package/dist/client/shared/creeveyClientApi.js +18 -1
- package/dist/client/shared/creeveyClientApi.js.map +1 -1
- package/dist/client/shared/helpers.d.ts +1 -3
- package/dist/client/shared/helpers.js +4 -19
- package/dist/client/shared/helpers.js.map +1 -1
- package/dist/client/web/CreeveyApp.d.ts +1 -0
- package/dist/client/web/CreeveyApp.js +22 -9
- package/dist/client/web/CreeveyApp.js.map +1 -1
- package/dist/client/web/CreeveyContext.d.ts +1 -0
- package/dist/client/web/CreeveyContext.js +18 -7
- package/dist/client/web/CreeveyContext.js.map +1 -1
- package/dist/client/web/CreeveyLoader.d.ts +1 -1
- package/dist/client/web/CreeveyLoader.js +3 -3
- package/dist/client/web/CreeveyLoader.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/Checkbox.d.ts +4 -4
- package/dist/client/web/CreeveyView/SideBar/Checkbox.js +36 -6
- package/dist/client/web/CreeveyView/SideBar/Checkbox.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/Search.js +18 -8
- package/dist/client/web/CreeveyView/SideBar/Search.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/SideBar.js +26 -12
- package/dist/client/web/CreeveyView/SideBar/SideBar.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/SideBarFooter.js +28 -17
- package/dist/client/web/CreeveyView/SideBar/SideBarFooter.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js +32 -12
- package/dist/client/web/CreeveyView/SideBar/SideBarHeader.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/SuiteLink.d.ts +6 -6
- package/dist/client/web/CreeveyView/SideBar/SuiteLink.js +20 -11
- package/dist/client/web/CreeveyView/SideBar/SuiteLink.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/TestLink.js +20 -11
- package/dist/client/web/CreeveyView/SideBar/TestLink.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +2 -2
- package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js +2 -2
- package/dist/client/web/CreeveyView/SideBar/TestStatusIcon.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/TestsStatus.d.ts +2 -2
- package/dist/client/web/CreeveyView/SideBar/TestsStatus.js +3 -2
- package/dist/client/web/CreeveyView/SideBar/TestsStatus.js.map +1 -1
- package/dist/client/web/CreeveyView/SideBar/Toggle.js +1 -1
- package/dist/client/web/CreeveyView/SideBar/Toggle.js.map +1 -1
- package/dist/client/web/KeyboardEventsContext.js +17 -7
- package/dist/client/web/KeyboardEventsContext.js.map +1 -1
- package/dist/client/web/assets/index-CtSq3IhG.js +518 -0
- package/dist/client/web/index.html +1 -1
- package/dist/client/web/index.js +26 -11
- package/dist/client/web/index.js.map +1 -1
- package/dist/client/web/themes.d.ts +2 -0
- package/dist/client/web/themes.js +22 -0
- package/dist/client/web/themes.js.map +1 -0
- package/dist/creevey.d.ts +1 -1
- package/dist/creevey.js +122 -41
- package/dist/creevey.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/playwright/generator.d.ts +25 -0
- package/dist/playwright/generator.js +243 -0
- package/dist/playwright/generator.js.map +1 -0
- package/dist/playwright/helpers.d.ts +2 -0
- package/dist/playwright/helpers.js +29 -0
- package/dist/playwright/helpers.js.map +1 -0
- package/dist/playwright/reporter.d.ts +83 -0
- package/dist/playwright/reporter.js +334 -0
- package/dist/playwright/reporter.js.map +1 -0
- package/dist/playwright/setup.d.ts +3 -0
- package/dist/playwright/setup.js +72 -0
- package/dist/playwright/setup.js.map +1 -0
- package/dist/playwright.d.ts +1 -0
- package/dist/playwright.js +3 -1
- package/dist/playwright.js.map +1 -1
- package/dist/server/compare.d.ts +18 -0
- package/dist/server/compare.js +182 -0
- package/dist/server/compare.js.map +1 -0
- package/dist/server/config.d.ts +3 -3
- package/dist/server/config.js +75 -8
- package/dist/server/config.js.map +1 -1
- package/dist/server/connection.d.ts +3 -0
- package/dist/server/connection.js +28 -0
- package/dist/server/connection.js.map +1 -0
- package/dist/server/docker.d.ts +1 -1
- package/dist/server/docker.js +54 -32
- package/dist/server/docker.js.map +1 -1
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.js +161 -64
- package/dist/server/index.js.map +1 -1
- package/dist/server/master/api.d.ts +11 -6
- package/dist/server/master/api.js +88 -25
- package/dist/server/master/api.js.map +1 -1
- package/dist/server/master/handlers/capture-handler.d.ts +5 -0
- package/dist/server/master/handlers/capture-handler.js +25 -0
- package/dist/server/master/handlers/capture-handler.js.map +1 -0
- package/dist/server/master/handlers/index.d.ts +4 -0
- package/dist/server/master/handlers/index.js +21 -0
- package/dist/server/master/handlers/index.js.map +1 -0
- package/dist/server/master/handlers/ping-handler.d.ts +2 -0
- package/dist/server/master/handlers/ping-handler.js +8 -0
- package/dist/server/master/handlers/ping-handler.js.map +1 -0
- package/dist/server/master/handlers/static-handler.d.ts +1 -0
- package/dist/server/master/handlers/static-handler.js +20 -0
- package/dist/server/master/handlers/static-handler.js.map +1 -0
- package/dist/server/master/handlers/stories-handler.d.ts +4 -0
- package/dist/server/master/handlers/stories-handler.js +24 -0
- package/dist/server/master/handlers/stories-handler.js.map +1 -0
- package/dist/server/master/master.js +7 -24
- package/dist/server/master/master.js.map +1 -1
- package/dist/server/master/pool.d.ts +1 -0
- package/dist/server/master/pool.js +5 -3
- package/dist/server/master/pool.js.map +1 -1
- package/dist/server/master/queue.d.ts +1 -1
- package/dist/server/master/queue.js +14 -6
- package/dist/server/master/queue.js.map +1 -1
- package/dist/server/master/runner.d.ts +6 -6
- package/dist/server/master/runner.js +98 -130
- package/dist/server/master/runner.js.map +1 -1
- package/dist/server/master/server.d.ts +1 -1
- package/dist/server/master/server.js +193 -88
- package/dist/server/master/server.js.map +1 -1
- package/dist/server/master/start.d.ts +1 -2
- package/dist/server/master/start.js +13 -29
- package/dist/server/master/start.js.map +1 -1
- package/dist/server/master/testsManager.d.ts +81 -0
- package/dist/server/master/testsManager.js +282 -0
- package/dist/server/master/testsManager.js.map +1 -0
- package/dist/server/playwright/docker-file.d.ts +1 -1
- package/dist/server/playwright/docker-file.js +17 -8
- package/dist/server/playwright/docker-file.js.map +1 -1
- package/dist/server/playwright/docker.d.ts +2 -1
- package/dist/server/playwright/docker.js +10 -2
- package/dist/server/playwright/docker.js.map +1 -1
- package/dist/server/playwright/index-source.mjs +16 -0
- package/dist/server/playwright/internal.d.ts +7 -7
- package/dist/server/playwright/internal.js +137 -79
- package/dist/server/playwright/internal.js.map +1 -1
- package/dist/server/playwright/webdriver.d.ts +3 -3
- package/dist/server/playwright/webdriver.js +0 -6
- package/dist/server/playwright/webdriver.js.map +1 -1
- package/dist/server/providers/browser.js +4 -3
- package/dist/server/providers/browser.js.map +1 -1
- package/dist/server/providers/hybrid.js +2 -2
- package/dist/server/providers/hybrid.js.map +1 -1
- package/dist/server/report.d.ts +10 -0
- package/dist/server/report.js +45 -0
- package/dist/server/report.js.map +1 -0
- package/dist/server/reporters/creevey.d.ts +7 -0
- package/dist/server/reporters/creevey.js +63 -0
- package/dist/server/reporters/creevey.js.map +1 -0
- package/dist/server/reporters/index.d.ts +2 -0
- package/dist/server/reporters/index.js +16 -0
- package/dist/server/reporters/index.js.map +1 -0
- package/dist/server/reporters/junit.d.ts +16 -0
- package/dist/server/reporters/junit.js +167 -0
- package/dist/server/reporters/junit.js.map +1 -0
- package/dist/server/reporters/teamcity.d.ts +7 -0
- package/dist/server/reporters/teamcity.js +60 -0
- package/dist/server/reporters/teamcity.js.map +1 -0
- package/dist/server/selenium/internal.d.ts +3 -3
- package/dist/server/selenium/internal.js +48 -34
- package/dist/server/selenium/internal.js.map +1 -1
- package/dist/server/selenium/selenoid.js +12 -6
- package/dist/server/selenium/selenoid.js.map +1 -1
- package/dist/server/selenium/webdriver.d.ts +3 -3
- package/dist/server/selenium/webdriver.js +4 -8
- package/dist/server/selenium/webdriver.js.map +1 -1
- package/dist/server/shutdown.d.ts +1 -0
- package/dist/server/shutdown.js +23 -0
- package/dist/server/shutdown.js.map +1 -0
- package/dist/server/stories.d.ts +0 -1
- package/dist/server/stories.js +0 -12
- package/dist/server/stories.js.map +1 -1
- package/dist/server/telemetry.js +3 -3
- package/dist/server/telemetry.js.map +1 -1
- package/dist/server/testsFiles/parser.js +45 -5
- package/dist/server/testsFiles/parser.js.map +1 -1
- package/dist/server/utils.d.ts +23 -0
- package/dist/server/utils.js +113 -13
- package/dist/server/utils.js.map +1 -1
- package/dist/server/webdriver.d.ts +1 -1
- package/dist/server/worker/context.d.ts +3 -0
- package/dist/server/worker/context.js +15 -0
- package/dist/server/worker/context.js.map +1 -0
- package/dist/server/worker/match-image.d.ts +8 -12
- package/dist/server/worker/match-image.js +11 -178
- package/dist/server/worker/match-image.js.map +1 -1
- package/dist/server/worker/start.d.ts +2 -2
- package/dist/server/worker/start.js +27 -63
- package/dist/server/worker/start.js.map +1 -1
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/index.js +9 -7
- package/dist/shared/index.js.map +1 -1
- package/dist/types.d.ts +84 -43
- package/dist/types.js +65 -1
- package/dist/types.js.map +1 -1
- package/docs/cli.md +80 -0
- package/docs/config.md +179 -165
- package/docs/examples/playwright-reporer/playwright.config.ts +37 -0
- package/docs/migration-0.9-to-0.10.md +144 -0
- package/docs/playwright-reporter.md +357 -0
- package/docs/storybook.md +60 -0
- package/docs/tests.md +50 -45
- package/package.json +78 -83
- package/playwright.config.mts +46 -0
- package/src/client/addon/components/Addon.tsx +1 -1
- package/src/client/addon/components/Panel.tsx +2 -2
- package/src/client/addon/components/TestSelect.tsx +2 -2
- package/src/client/addon/components/Tools.tsx +2 -2
- package/src/client/addon/controller.ts +4 -4
- package/src/client/addon/makeDecorator.ts +69 -0
- package/src/client/addon/manager.ts +38 -37
- package/src/client/addon/preset.ts +2 -1
- package/src/client/addon/withCreevey.ts +10 -18
- package/src/client/shared/components/ImagesView/BlendView.tsx +1 -1
- package/src/client/shared/components/ImagesView/ImagesView.tsx +1 -1
- package/src/client/shared/components/ImagesView/SideBySideView.tsx +2 -2
- package/src/client/shared/components/ImagesView/SlideView.tsx +2 -2
- package/src/client/shared/components/ImagesView/SwapView.tsx +2 -2
- package/src/client/shared/components/ImagesView/common.ts +1 -1
- package/src/client/shared/components/PageFooter/PageFooter.tsx +1 -1
- package/src/client/shared/components/PageFooter/Paging.tsx +1 -1
- package/src/client/shared/components/PageHeader/ImagePreview.tsx +1 -1
- package/src/client/shared/components/PageHeader/PageHeader.tsx +23 -7
- package/src/client/shared/components/ResultsPage.tsx +6 -4
- package/src/client/shared/creeveyClientApi.ts +19 -1
- package/src/client/shared/helpers.ts +4 -24
- package/src/client/web/CreeveyApp.tsx +5 -2
- package/src/client/web/CreeveyContext.tsx +2 -0
- package/src/client/web/CreeveyLoader.tsx +2 -2
- package/src/client/web/CreeveyView/SideBar/Checkbox.tsx +3 -3
- package/src/client/web/CreeveyView/SideBar/Search.tsx +1 -1
- package/src/client/web/CreeveyView/SideBar/SideBar.tsx +11 -6
- package/src/client/web/CreeveyView/SideBar/SideBarFooter.tsx +21 -19
- package/src/client/web/CreeveyView/SideBar/SideBarHeader.tsx +20 -5
- package/src/client/web/CreeveyView/SideBar/SuiteLink.tsx +10 -8
- package/src/client/web/CreeveyView/SideBar/TestLink.tsx +9 -7
- package/src/client/web/CreeveyView/SideBar/TestStatusIcon.tsx +2 -2
- package/src/client/web/CreeveyView/SideBar/TestsStatus.tsx +3 -2
- package/src/client/web/CreeveyView/SideBar/Toggle.tsx +1 -1
- package/src/client/web/index.tsx +10 -5
- package/src/client/web/themes.ts +24 -0
- package/src/creevey.ts +92 -38
- package/src/playwright/generator.ts +322 -0
- package/src/playwright/helpers.ts +31 -0
- package/src/playwright/reporter.ts +381 -0
- package/src/playwright/setup.ts +84 -0
- package/src/playwright.ts +1 -0
- package/src/server/compare.ts +260 -0
- package/src/server/config.ts +52 -9
- package/src/server/connection.ts +26 -0
- package/src/server/docker.ts +62 -34
- package/src/server/index.ts +161 -79
- package/src/server/master/api.ts +94 -28
- package/src/server/master/handlers/capture-handler.ts +20 -0
- package/src/server/master/handlers/index.ts +4 -0
- package/src/server/master/handlers/ping-handler.ts +6 -0
- package/src/server/master/handlers/static-handler.ts +16 -0
- package/src/server/master/handlers/stories-handler.ts +20 -0
- package/src/server/master/master.ts +10 -27
- package/src/server/master/pool.ts +7 -3
- package/src/server/master/queue.ts +21 -7
- package/src/server/master/runner.ts +123 -134
- package/src/server/master/server.ts +214 -101
- package/src/server/master/start.ts +19 -41
- package/src/server/master/testsManager.ts +316 -0
- package/src/server/playwright/docker-file.ts +20 -8
- package/src/server/playwright/docker.ts +16 -3
- package/src/server/playwright/index-source.mjs +16 -0
- package/src/server/playwright/internal.ts +169 -96
- package/src/server/playwright/webdriver.ts +4 -10
- package/src/server/providers/browser.ts +4 -3
- package/src/server/providers/hybrid.ts +2 -3
- package/src/server/report.ts +51 -0
- package/src/server/reporters/creevey.ts +71 -0
- package/src/server/reporters/index.ts +11 -0
- package/src/server/reporters/junit.ts +207 -0
- package/src/server/reporters/teamcity.ts +74 -0
- package/src/server/selenium/internal.ts +62 -45
- package/src/server/selenium/selenoid.ts +13 -6
- package/src/server/selenium/webdriver.ts +8 -12
- package/src/server/shutdown.ts +19 -0
- package/src/server/stories.ts +1 -12
- package/src/server/telemetry.ts +3 -3
- package/src/server/testsFiles/parser.ts +52 -4
- package/src/server/utils.ts +123 -14
- package/src/server/webdriver.ts +1 -1
- package/src/server/worker/context.ts +14 -0
- package/src/server/worker/match-image.ts +16 -248
- package/src/server/worker/start.ts +32 -75
- package/src/shared/index.ts +10 -8
- package/src/types.ts +91 -58
- package/types/global.d.ts +1 -0
- package/dist/client/web/assets/index-BE9CL5_G.js +0 -591
- package/dist/server/reporter.d.ts +0 -26
- package/dist/server/reporter.js +0 -108
- package/dist/server/reporter.js.map +0 -1
- package/dist/server/update.d.ts +0 -2
- package/dist/server/update.js +0 -53
- package/dist/server/update.js.map +0 -1
- package/src/server/reporter.ts +0 -139
- package/src/server/update.ts +0 -74
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.start = start;
|
7
7
|
const chai_1 = __importDefault(require("chai"));
|
8
|
-
const events_1 = __importDefault(require("events"));
|
9
8
|
const types_js_1 = require("../../types.js");
|
10
9
|
const messages_js_1 = require("../messages.js");
|
11
10
|
const chai_image_js_1 = __importDefault(require("./chai-image.js"));
|
@@ -28,9 +27,10 @@ async function getTestsFromStories(config, browserName, webdriver) {
|
|
28
27
|
.forEach((test) => testsById.set(test.id, test));
|
29
28
|
return testsById;
|
30
29
|
}
|
31
|
-
function runHandler(browserName,
|
30
|
+
function runHandler(browserName, result, error) {
|
32
31
|
// TODO How handle browser corruption?
|
33
|
-
|
32
|
+
const { images } = result;
|
33
|
+
if (images != null && (0, types_js_1.isImageError)(error)) {
|
34
34
|
if (typeof error.images == 'string') {
|
35
35
|
const image = images[browserName];
|
36
36
|
if (image)
|
@@ -45,11 +45,12 @@ function runHandler(browserName, images, error) {
|
|
45
45
|
});
|
46
46
|
}
|
47
47
|
}
|
48
|
-
if (error || Object.values(images).some((image) => image?.error != null)) {
|
49
|
-
|
48
|
+
if (error || (images != null && Object.values(images).some((image) => image?.error != null))) {
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
50
|
+
const errorMessage = result.error;
|
50
51
|
const isUnexpectedError = hasTimeout(errorMessage) ||
|
51
52
|
hasDisconnected(errorMessage) ||
|
52
|
-
Object.values(images).some((image) => hasTimeout(image?.error));
|
53
|
+
(images != null && Object.values(images).some((image) => hasTimeout(image?.error)));
|
53
54
|
if (isUnexpectedError)
|
54
55
|
(0, messages_js_1.emitWorkerMessage)({ type: 'error', payload: { subtype: 'unknown', error: errorMessage } });
|
55
56
|
else
|
@@ -57,13 +58,18 @@ function runHandler(browserName, images, error) {
|
|
57
58
|
type: 'end',
|
58
59
|
payload: {
|
59
60
|
status: 'failed',
|
60
|
-
|
61
|
-
error: errorMessage,
|
61
|
+
...result,
|
62
62
|
},
|
63
63
|
});
|
64
64
|
}
|
65
65
|
else {
|
66
|
-
(0, messages_js_1.emitTestMessage)({
|
66
|
+
(0, messages_js_1.emitTestMessage)({
|
67
|
+
type: 'end',
|
68
|
+
payload: {
|
69
|
+
status: 'success',
|
70
|
+
...result,
|
71
|
+
},
|
72
|
+
});
|
67
73
|
}
|
68
74
|
}
|
69
75
|
async function setupWebdriver(webdriver) {
|
@@ -92,7 +98,6 @@ function hasTimeout(str) {
|
|
92
98
|
return str?.toLowerCase().includes('timeout') ?? false;
|
93
99
|
}
|
94
100
|
async function start(browser, gridUrl, config, options) {
|
95
|
-
let retries = 0;
|
96
101
|
const imagesContext = {
|
97
102
|
attachments: [],
|
98
103
|
testFullPath: [],
|
@@ -102,27 +107,8 @@ async function start(browser, gridUrl, config, options) {
|
|
102
107
|
const [sessionId, webdriver] = (await setupWebdriver(new Webdriver(browser, gridUrl, config, options))) ?? [];
|
103
108
|
if (!webdriver || !sessionId)
|
104
109
|
return;
|
105
|
-
const reporterOptions = {
|
106
|
-
...config.reporterOptions,
|
107
|
-
creevey: {
|
108
|
-
sessionId,
|
109
|
-
reportDir: config.reportDir,
|
110
|
-
browserName: browser,
|
111
|
-
get willRetry() {
|
112
|
-
return retries < config.maxRetries;
|
113
|
-
},
|
114
|
-
get images() {
|
115
|
-
return imagesContext.images;
|
116
|
-
},
|
117
|
-
},
|
118
|
-
};
|
119
|
-
class FakeRunner extends events_1.default {
|
120
|
-
}
|
121
|
-
const runner = new FakeRunner();
|
122
|
-
const Reporter = config.reporter;
|
123
|
-
new Reporter(runner, { reporterOptions });
|
124
110
|
const { matchImage, matchImages } = options.odiff
|
125
|
-
? (0, match_image_js_1.getOdiffMatchers)(imagesContext, config)
|
111
|
+
? await (0, match_image_js_1.getOdiffMatchers)(imagesContext, config)
|
126
112
|
: await (0, match_image_js_1.getMatchers)(imagesContext, config);
|
127
113
|
chai_1.default.use((0, chai_image_js_1.default)(matchImage, matchImages));
|
128
114
|
const tests = await (async () => {
|
@@ -167,27 +153,8 @@ async function start(browser, gridUrl, config, options) {
|
|
167
153
|
imagesContext.attachments = [];
|
168
154
|
imagesContext.testFullPath = (0, utils_js_1.getTestPath)(test);
|
169
155
|
imagesContext.images = {};
|
170
|
-
retries = message.payload.retries;
|
171
156
|
let error = undefined;
|
172
|
-
const fakeSuite = {
|
173
|
-
title: test.storyPath.slice(0, -1).join('/'),
|
174
|
-
fullTitle: () => fakeSuite.title,
|
175
|
-
titlePath: () => [fakeSuite.title],
|
176
|
-
tests: [],
|
177
|
-
};
|
178
|
-
const fakeTest = {
|
179
|
-
parent: fakeSuite,
|
180
|
-
title: [test.story.name, test.testName, test.browser].filter(types_js_1.isDefined).join('/'),
|
181
|
-
fullTitle: () => (0, utils_js_1.getTestPath)(test).join('/'),
|
182
|
-
titlePath: () => (0, utils_js_1.getTestPath)(test),
|
183
|
-
currentRetry: () => retries,
|
184
|
-
retires: () => config.maxRetries,
|
185
|
-
slow: () => 1000,
|
186
|
-
};
|
187
|
-
fakeSuite.tests.push(fakeTest);
|
188
157
|
void (async () => {
|
189
|
-
runner.emit(types_js_1.TEST_EVENTS.RUN_BEGIN);
|
190
|
-
runner.emit(types_js_1.TEST_EVENTS.TEST_BEGIN, fakeTest);
|
191
158
|
let timeout;
|
192
159
|
let isRejected = false;
|
193
160
|
const start = Date.now();
|
@@ -205,22 +172,9 @@ async function start(browser, gridUrl, config, options) {
|
|
205
172
|
}
|
206
173
|
catch (testError) {
|
207
174
|
error = testError;
|
208
|
-
fakeTest.err = error;
|
209
175
|
}
|
210
176
|
const duration = Date.now() - start;
|
211
177
|
clearTimeout(timeout);
|
212
|
-
fakeTest.attachments = imagesContext.attachments;
|
213
|
-
fakeTest.state = error ? 'failed' : 'passed';
|
214
|
-
fakeTest.duration = duration;
|
215
|
-
fakeTest.speed = duration > fakeTest.slow() ? 'slow' : duration / 2 > fakeTest.slow() ? 'medium' : 'fast';
|
216
|
-
if (error) {
|
217
|
-
runner.emit(types_js_1.TEST_EVENTS.TEST_FAIL, fakeTest, error);
|
218
|
-
}
|
219
|
-
else {
|
220
|
-
runner.emit(types_js_1.TEST_EVENTS.TEST_PASS, fakeTest);
|
221
|
-
}
|
222
|
-
runner.emit(types_js_1.TEST_EVENTS.TEST_END, fakeTest);
|
223
|
-
runner.emit(types_js_1.TEST_EVENTS.RUN_END);
|
224
178
|
await webdriver.afterTest(test);
|
225
179
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
226
180
|
if (isRejected) {
|
@@ -230,7 +184,17 @@ async function start(browser, gridUrl, config, options) {
|
|
230
184
|
});
|
231
185
|
}
|
232
186
|
else {
|
233
|
-
|
187
|
+
const result = {
|
188
|
+
sessionId,
|
189
|
+
browserName: baseContext.browserName,
|
190
|
+
workerId: process.pid,
|
191
|
+
images: imagesContext.images,
|
192
|
+
error: error ? serializeError(error) : undefined,
|
193
|
+
duration,
|
194
|
+
attachments: imagesContext.attachments,
|
195
|
+
retries: message.payload.retries,
|
196
|
+
};
|
197
|
+
runHandler(baseContext.browserName, result, error);
|
234
198
|
}
|
235
199
|
})().catch((error) => {
|
236
200
|
(0, logger_js_1.logger)().error('Unexpected error:', error);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/server/worker/start.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/server/worker/start.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/index.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Parameters } from '
|
1
|
+
import type { Parameters } from 'storybook/internal/types';
|
2
2
|
import { SetStoriesData, StoriesRaw, StoryInput } from '../types.js';
|
3
3
|
export declare const combineParameters: (...parameterSets: Parameters[]) => Parameters;
|
4
4
|
export declare const denormalizeStoryParameters: ({ globalParameters, kindParameters, stories, }: SetStoriesData) => StoriesRaw;
|
package/dist/shared/index.js
CHANGED
@@ -4,12 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.deserializeStory = exports.deserializeRawStories = exports.serializeRawStories = exports.denormalizeStoryParameters = exports.combineParameters = void 0;
|
7
|
-
const
|
7
|
+
const mapValues_js_1 = __importDefault(require("lodash/mapValues.js"));
|
8
|
+
const mergeWith_js_1 = __importDefault(require("lodash/mergeWith.js"));
|
9
|
+
const cloneDeepWith_js_1 = __importDefault(require("lodash/cloneDeepWith.js"));
|
8
10
|
const serializeRegExp_js_1 = require("./serializeRegExp.js");
|
9
11
|
// NOTE: Copy-paste from storybook/api
|
10
12
|
const combineParameters = (...parameterSets) =>
|
11
13
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
12
|
-
|
14
|
+
(0, mergeWith_js_1.default)({}, ...parameterSets, (_, srcValue) => {
|
13
15
|
// Treat arrays as scalars:
|
14
16
|
if (Array.isArray(srcValue))
|
15
17
|
return srcValue;
|
@@ -18,14 +20,14 @@ lodash_1.default.mergeWith({}, ...parameterSets, (_, srcValue) => {
|
|
18
20
|
exports.combineParameters = combineParameters;
|
19
21
|
// NOTE: Copy-paste from storybook/api
|
20
22
|
const denormalizeStoryParameters = ({ globalParameters, kindParameters, stories, }) => {
|
21
|
-
return
|
23
|
+
return (0, mapValues_js_1.default)(stories, (storyData) => ({
|
22
24
|
...storyData,
|
23
25
|
parameters: (0, exports.combineParameters)(globalParameters, kindParameters[storyData.title] ?? {}, storyData.parameters),
|
24
26
|
}));
|
25
27
|
};
|
26
28
|
exports.denormalizeStoryParameters = denormalizeStoryParameters;
|
27
29
|
const serializeRawStories = (stories) => {
|
28
|
-
return
|
30
|
+
return (0, mapValues_js_1.default)(stories, (storyData) => {
|
29
31
|
const creevey = storyData.parameters.creevey;
|
30
32
|
if (creevey?.skip) {
|
31
33
|
return {
|
@@ -34,7 +36,7 @@ const serializeRawStories = (stories) => {
|
|
34
36
|
...storyData.parameters,
|
35
37
|
creevey: {
|
36
38
|
...creevey,
|
37
|
-
skip:
|
39
|
+
skip: (0, cloneDeepWith_js_1.default)(creevey.skip, (value) => {
|
38
40
|
if ((0, serializeRegExp_js_1.isRegExp)(value)) {
|
39
41
|
return (0, serializeRegExp_js_1.serializeRegExp)(value);
|
40
42
|
}
|
@@ -49,7 +51,7 @@ const serializeRawStories = (stories) => {
|
|
49
51
|
};
|
50
52
|
exports.serializeRawStories = serializeRawStories;
|
51
53
|
const deserializeRawStories = (stories) => {
|
52
|
-
return
|
54
|
+
return (0, mapValues_js_1.default)(stories, exports.deserializeStory);
|
53
55
|
};
|
54
56
|
exports.deserializeRawStories = deserializeRawStories;
|
55
57
|
const deserializeStory = (story) => {
|
@@ -61,7 +63,7 @@ const deserializeStory = (story) => {
|
|
61
63
|
...story.parameters,
|
62
64
|
creevey: {
|
63
65
|
...creevey,
|
64
|
-
skip:
|
66
|
+
skip: (0, cloneDeepWith_js_1.default)(creevey.skip, (value) => {
|
65
67
|
if ((0, serializeRegExp_js_1.isSerializedRegExp)(value)) {
|
66
68
|
return (0, serializeRegExp_js_1.deserializeRegExp)(value);
|
67
69
|
}
|
package/dist/shared/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":";;;;;;AAAA,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA4C;AAC5C,uEAA4C;AAC5C,+EAAoD;AAGpD,6DAAwG;AAExG,sCAAsC;AAC/B,MAAM,iBAAiB,GAAG,CAAC,GAAG,aAA2B,EAAc,EAAE;AAC9E,+DAA+D;AAC/D,IAAA,sBAAS,EAAC,EAAE,EAAE,GAAG,aAAa,EAAE,CAAC,CAAU,EAAE,QAAiB,EAAE,EAAE;IAChE,2BAA2B;IAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAqB,CAAC;IAE1D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CAAC;AAPQ,QAAA,iBAAiB,qBAOzB;AAEL,sCAAsC;AAC/B,MAAM,0BAA0B,GAAG,CAAC,EACzC,gBAAgB,EAChB,cAAc,EACd,OAAO,GACQ,EAAc,EAAE;IAC/B,OAAO,IAAA,sBAAS,EAAC,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxC,GAAG,SAAS;QACZ,UAAU,EAAE,IAAA,yBAAiB,EAAC,gBAAgB,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,UAAU,CAAC;KAC7G,CAAC,CAAe,CAAC;AACpB,CAAC,CAAC;AATW,QAAA,0BAA0B,8BASrC;AAEK,MAAM,mBAAmB,GAAG,CAAC,OAAmB,EAAc,EAAE;IACrE,OAAO,IAAA,sBAAS,EAAC,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE;QACtC,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,OAAyC,CAAC;QAC/E,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;YAClB,OAAO;gBACL,GAAG,SAAS;gBACZ,UAAU,EAAE;oBACV,GAAG,SAAS,CAAC,UAAU;oBACvB,OAAO,EAAE;wBACP,GAAG,OAAO;wBACV,IAAI,EAAE,IAAA,0BAAa,EAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;4BAC1C,IAAI,IAAA,6BAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;gCACpB,OAAO,IAAA,oCAAe,EAAC,KAAK,CAAC,CAAC;4BAChC,CAAC;4BACD,OAAO,SAAS,CAAC;wBACnB,CAAC,CAA+B;qBACjC;iBACF;aACF,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAtBW,QAAA,mBAAmB,uBAsB9B;AAEK,MAAM,qBAAqB,GAAG,CAAC,OAAmB,EAAc,EAAE;IACvE,OAAO,IAAA,sBAAS,EAAC,OAAO,EAAE,wBAAgB,CAAC,CAAC;AAC9C,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEK,MAAM,gBAAgB,GAAG,CAAC,KAAiB,EAAc,EAAE;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,OAAyC,CAAC;IAC3E,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,OAAO;YACL,GAAG,KAAK;YACR,UAAU,EAAE;gBACV,GAAG,KAAK,CAAC,UAAU;gBACnB,OAAO,EAAE;oBACP,GAAG,OAAO;oBACV,IAAI,EAAE,IAAA,0BAAa,EAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;wBAC1C,IAAI,IAAA,uCAAkB,EAAC,KAAK,CAAC,EAAE,CAAC;4BAC9B,OAAO,IAAA,sCAAiB,EAAC,KAAK,CAAC,CAAC;wBAClC,CAAC;wBACD,OAAO,SAAS,CAAC;oBACnB,CAAC,CAA+B;iBACjC;aACF;SACF,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AApBW,QAAA,gBAAgB,oBAoB3B"}
|
package/dist/types.d.ts
CHANGED
@@ -1,11 +1,11 @@
|
|
1
|
-
import
|
1
|
+
import * as v from 'valibot';
|
2
2
|
import type { Worker as ClusterWorker } from 'cluster';
|
3
|
-
import type Pixelmatch from 'pixelmatch';
|
4
|
-
import type { ODiffOptions } from 'odiff-bin';
|
5
3
|
import type { expect } from 'chai';
|
6
4
|
import type EventEmitter from 'events';
|
7
|
-
import {
|
8
|
-
|
5
|
+
import type { ODiffOptions } from 'odiff-bin';
|
6
|
+
import type { LaunchOptions } from 'playwright-core';
|
7
|
+
import type { PixelmatchOptions } from 'pixelmatch';
|
8
|
+
import type { StoryContextForEnhancers, DecoratorFunction } from 'storybook/internal/types';
|
9
9
|
export interface SetStoriesData {
|
10
10
|
v?: number;
|
11
11
|
globalParameters: {
|
@@ -88,6 +88,10 @@ export interface BrowserConfigObject {
|
|
88
88
|
* Storybook's globals to set in a specific browser
|
89
89
|
* @see https://github.com/storybookjs/storybook/blob/v6.0.0/docs/essentials/toolbars-and-globals.md
|
90
90
|
*/
|
91
|
+
storybookGlobals?: StorybookGlobals;
|
92
|
+
/**
|
93
|
+
* @deprecated Use `storybookGlobals` instead
|
94
|
+
*/
|
91
95
|
_storybookGlobals?: StorybookGlobals;
|
92
96
|
/**
|
93
97
|
* Specify custom docker image. Used only with `useDocker == true`
|
@@ -114,11 +118,17 @@ export interface BrowserConfigObject {
|
|
114
118
|
platformName?: string;
|
115
119
|
[name: string]: unknown;
|
116
120
|
};
|
117
|
-
playwrightOptions?: Omit<LaunchOptions, 'logger'
|
121
|
+
playwrightOptions?: Omit<LaunchOptions, 'logger'> & {
|
122
|
+
trace?: {
|
123
|
+
screenshots?: boolean;
|
124
|
+
snapshots?: boolean;
|
125
|
+
sources?: boolean;
|
126
|
+
};
|
127
|
+
};
|
118
128
|
}
|
119
129
|
export type StorybookGlobals = Record<string, unknown>;
|
120
130
|
export type BrowserConfig = boolean | string | BrowserConfigObject;
|
121
|
-
export type CreeveyWebdriverConstructor = new (browser: string, gridUrl: string, config: Config, options:
|
131
|
+
export type CreeveyWebdriverConstructor = new (browser: string, gridUrl: string, config: Config, options: WorkerOptions) => CreeveyWebdriver;
|
122
132
|
export interface CreeveyWebdriver {
|
123
133
|
getSessionId(): Promise<string>;
|
124
134
|
openBrowser(fresh?: boolean): Promise<CreeveyWebdriver | null>;
|
@@ -140,6 +150,7 @@ export interface DockerAuth {
|
|
140
150
|
serveraddress?: string;
|
141
151
|
}
|
142
152
|
export type BaseReporter = new (runner: EventEmitter, options: {
|
153
|
+
reportDir: string;
|
143
154
|
reporterOptions: any;
|
144
155
|
}) => void;
|
145
156
|
export interface Config {
|
@@ -157,6 +168,11 @@ export interface Config {
|
|
157
168
|
* Url where storybook hosted on
|
158
169
|
*/
|
159
170
|
resolveStorybookUrl?: () => Promise<string>;
|
171
|
+
/**
|
172
|
+
* Command to automatically start Storybook if it is not running.
|
173
|
+
* For example, `npm run storybook` or `yarn storybook` etc.
|
174
|
+
*/
|
175
|
+
storybookAutorunCmd?: string;
|
160
176
|
/**
|
161
177
|
* Absolute path to directory with reference images
|
162
178
|
* @default path.join(process.cwd(), './images')
|
@@ -170,8 +186,9 @@ export interface Config {
|
|
170
186
|
/**
|
171
187
|
* Specify a custom reporter for test results. Creevey accepts only mocha-like reporters
|
172
188
|
* @optional
|
189
|
+
* @default 'creevey'
|
173
190
|
*/
|
174
|
-
reporter: BaseReporter;
|
191
|
+
reporter: BaseReporter | 'creevey' | 'teamcity' | 'junit';
|
175
192
|
/**
|
176
193
|
* Options which are used by reporter
|
177
194
|
*/
|
@@ -188,11 +205,12 @@ export interface Config {
|
|
188
205
|
testTimeout: number;
|
189
206
|
/**
|
190
207
|
* Define pixelmatch diff options
|
191
|
-
* @default { threshold: 0.
|
208
|
+
* @default { threshold: 0.1, includeAA: false }
|
192
209
|
*/
|
193
|
-
diffOptions:
|
210
|
+
diffOptions: PixelmatchOptions;
|
194
211
|
/**
|
195
|
-
*
|
212
|
+
* Define odiff diff options
|
213
|
+
* @default { threshold: 0.1, antialiasing: true }
|
196
214
|
*/
|
197
215
|
odiffOptions: ODiffOptions;
|
198
216
|
/**
|
@@ -212,20 +230,17 @@ export interface Config {
|
|
212
230
|
/**
|
213
231
|
* Creevey has two built-in stories providers.
|
214
232
|
*
|
215
|
-
* `
|
216
|
-
* This provider builds and runs storybook in nodejs env, that allows write interaction tests by using Selenium API.
|
217
|
-
* The downside is it depends from project build specific and slightly increases init time.
|
218
|
-
*
|
219
|
-
* `browserStoriesProvider` - The second one is used by default with CSFv3 storybook feature.
|
220
|
-
* It load stories from storybook which is running in browser, like storyshots or loki do it.
|
233
|
+
* `browserStoriesProvider` - Extracts stories directly from the Storybook UI. It loads stories from storybook which is running in browser, like storyshots or loki do it.
|
221
234
|
* The downside of this, you can't use interaction tests in Creevey, unless you use CSFv3.
|
222
235
|
* Where you can define `play` method for each story
|
223
236
|
*
|
237
|
+
* `hybridStoriesProvider` - Combines stories from Storybook with tests from separate files. This is the default provider used in the configuration.
|
238
|
+
*
|
224
239
|
* Usage
|
225
240
|
* ``` typescript
|
226
|
-
* import { nodejsStoriesProvider as provider } from 'creevey'
|
227
|
-
* // or
|
228
241
|
* import { browserStoriesProvider as provider } from 'creevey'
|
242
|
+
* // or
|
243
|
+
* import { hybridStoriesProvider as provider } from 'creevey'
|
229
244
|
*
|
230
245
|
* // Creevey config
|
231
246
|
* module.exports = {
|
@@ -286,26 +301,36 @@ export interface StoriesProvider {
|
|
286
301
|
providerName?: string;
|
287
302
|
}
|
288
303
|
export type CreeveyConfig = Partial<Config>;
|
289
|
-
export
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
304
|
+
export declare const OptionsSchema: v.ObjectSchema<{
|
305
|
+
readonly ui: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
306
|
+
readonly storybookStart: v.OptionalSchema<v.UnionSchema<[v.StringSchema<undefined>, v.BooleanSchema<undefined>], undefined>, undefined>;
|
307
|
+
readonly config: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
308
|
+
readonly debug: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
309
|
+
readonly port: v.NumberSchema<undefined>;
|
310
|
+
readonly failFast: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
311
|
+
readonly reportDir: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
312
|
+
readonly screenDir: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
313
|
+
readonly storybookUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
314
|
+
readonly storybookPort: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
315
|
+
readonly reporter: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
316
|
+
readonly odiff: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
317
|
+
readonly trace: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
318
|
+
readonly docker: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
319
|
+
}, undefined>;
|
320
|
+
export declare const WorkerOptionsSchema: v.ObjectSchema<{
|
321
|
+
readonly browser: v.StringSchema<undefined>;
|
322
|
+
readonly storybookUrl: v.StringSchema<undefined>;
|
323
|
+
readonly gridUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
324
|
+
readonly config: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
325
|
+
readonly debug: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
326
|
+
readonly trace: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
327
|
+
readonly reportDir: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
328
|
+
readonly screenDir: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
329
|
+
readonly odiff: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
330
|
+
readonly port: v.NumberSchema<undefined>;
|
331
|
+
}, undefined>;
|
332
|
+
export type Options = v.InferOutput<typeof OptionsSchema>;
|
333
|
+
export type WorkerOptions = v.InferOutput<typeof WorkerOptionsSchema>;
|
309
334
|
export type WorkerError = 'browser' | 'test' | 'unknown';
|
310
335
|
export type WorkerMessage = {
|
311
336
|
type: 'ready';
|
@@ -376,8 +401,14 @@ export interface Images {
|
|
376
401
|
export type TestStatus = 'unknown' | 'pending' | 'running' | 'failed' | 'approved' | 'success' | 'retrying';
|
377
402
|
export interface TestResult {
|
378
403
|
status: 'failed' | 'success';
|
404
|
+
retries: number;
|
379
405
|
images?: Partial<Record<string, Images>>;
|
380
406
|
error?: string;
|
407
|
+
duration?: number;
|
408
|
+
attachments?: string[];
|
409
|
+
sessionId?: string;
|
410
|
+
browserName?: string;
|
411
|
+
workerId?: number;
|
381
412
|
}
|
382
413
|
export declare class ImagesError extends Error {
|
383
414
|
images?: string | Partial<Record<string, string>>;
|
@@ -410,8 +441,8 @@ export interface BaseCreeveyTestContext {
|
|
410
441
|
imageName?: string;
|
411
442
|
screenshot: Buffer;
|
412
443
|
}[];
|
413
|
-
matchImage: (image: Buffer, imageName?: string) => Promise<void>;
|
414
|
-
matchImages: (images: Record<string, Buffer>) => Promise<void>;
|
444
|
+
matchImage: (image: Buffer | string, imageName?: string) => Promise<void>;
|
445
|
+
matchImages: (images: Record<string, Buffer | string>) => Promise<void>;
|
415
446
|
}
|
416
447
|
export interface CreeveyTestContext extends BaseCreeveyTestContext {
|
417
448
|
takeScreenshot: () => Promise<Buffer>;
|
@@ -421,6 +452,8 @@ export interface CreeveyTestContext extends BaseCreeveyTestContext {
|
|
421
452
|
export declare enum TEST_EVENTS {
|
422
453
|
RUN_BEGIN = "start",
|
423
454
|
RUN_END = "end",
|
455
|
+
SUITE_BEGIN = "suite",
|
456
|
+
SUITE_END = "suite end",
|
424
457
|
TEST_BEGIN = "test",
|
425
458
|
TEST_END = "test end",
|
426
459
|
TEST_FAIL = "fail",
|
@@ -441,19 +474,27 @@ export interface FakeTest {
|
|
441
474
|
title: string;
|
442
475
|
fullTitle: () => string;
|
443
476
|
titlePath: () => string[];
|
444
|
-
currentRetry: () => number;
|
477
|
+
currentRetry: () => number | undefined;
|
445
478
|
retires: () => number;
|
446
479
|
slow: () => number;
|
447
480
|
duration?: number;
|
448
481
|
state?: 'failed' | 'passed';
|
449
482
|
speed?: 'slow' | 'medium' | 'fast';
|
450
|
-
err?:
|
483
|
+
err?: string;
|
451
484
|
attachments?: string[];
|
485
|
+
creevey: {
|
486
|
+
sessionId: string;
|
487
|
+
browserName: string;
|
488
|
+
workerId: number;
|
489
|
+
willRetry: boolean;
|
490
|
+
images: Partial<Record<string, Partial<Images>>>;
|
491
|
+
};
|
452
492
|
}
|
453
493
|
export interface CreeveyStatus {
|
454
494
|
isRunning: boolean;
|
455
495
|
tests: Partial<Record<string, TestData>>;
|
456
496
|
browsers: string[];
|
497
|
+
isUpdateMode: boolean;
|
457
498
|
}
|
458
499
|
export interface CreeveyUpdate {
|
459
500
|
isRunning?: boolean;
|
package/dist/types.js
CHANGED
@@ -1,6 +1,39 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
19
|
+
var ownKeys = function(o) {
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
21
|
+
var ar = [];
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
23
|
+
return ar;
|
24
|
+
};
|
25
|
+
return ownKeys(o);
|
26
|
+
};
|
27
|
+
return function (mod) {
|
28
|
+
if (mod && mod.__esModule) return mod;
|
29
|
+
var result = {};
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
31
|
+
__setModuleDefault(result, mod);
|
32
|
+
return result;
|
33
|
+
};
|
34
|
+
})();
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.TEST_EVENTS = exports.ImagesError = exports.StorybookEvents = void 0;
|
36
|
+
exports.TEST_EVENTS = exports.ImagesError = exports.WorkerOptionsSchema = exports.OptionsSchema = exports.StorybookEvents = void 0;
|
4
37
|
exports.noop = noop;
|
5
38
|
exports.isDefined = isDefined;
|
6
39
|
exports.isTest = isTest;
|
@@ -12,6 +45,7 @@ exports.isProcessMessage = isProcessMessage;
|
|
12
45
|
exports.isWorkerMessage = isWorkerMessage;
|
13
46
|
exports.isStoriesMessage = isStoriesMessage;
|
14
47
|
exports.isTestMessage = isTestMessage;
|
48
|
+
const v = __importStar(require("valibot"));
|
15
49
|
var StorybookEvents;
|
16
50
|
(function (StorybookEvents) {
|
17
51
|
StorybookEvents["SET_STORIES"] = "setStories";
|
@@ -24,6 +58,34 @@ var StorybookEvents;
|
|
24
58
|
StorybookEvents["SET_GLOBALS"] = "setGlobals";
|
25
59
|
StorybookEvents["UPDATE_GLOBALS"] = "updateGlobals";
|
26
60
|
})(StorybookEvents || (exports.StorybookEvents = StorybookEvents = {}));
|
61
|
+
exports.OptionsSchema = v.object({
|
62
|
+
ui: v.optional(v.boolean()),
|
63
|
+
storybookStart: v.optional(v.union([v.string(), v.boolean()])),
|
64
|
+
config: v.optional(v.string()),
|
65
|
+
debug: v.optional(v.boolean()),
|
66
|
+
port: v.number(),
|
67
|
+
failFast: v.optional(v.boolean()),
|
68
|
+
reportDir: v.optional(v.string()),
|
69
|
+
screenDir: v.optional(v.string()),
|
70
|
+
storybookUrl: v.optional(v.string()),
|
71
|
+
storybookPort: v.optional(v.number()),
|
72
|
+
reporter: v.optional(v.string()),
|
73
|
+
odiff: v.optional(v.boolean()),
|
74
|
+
trace: v.optional(v.boolean()),
|
75
|
+
docker: v.optional(v.boolean()),
|
76
|
+
});
|
77
|
+
exports.WorkerOptionsSchema = v.object({
|
78
|
+
browser: v.string(),
|
79
|
+
storybookUrl: v.string(),
|
80
|
+
gridUrl: v.optional(v.string()),
|
81
|
+
config: v.optional(v.string()),
|
82
|
+
debug: v.optional(v.boolean()),
|
83
|
+
trace: v.optional(v.boolean()),
|
84
|
+
reportDir: v.optional(v.string()),
|
85
|
+
screenDir: v.optional(v.string()),
|
86
|
+
odiff: v.optional(v.boolean()),
|
87
|
+
port: v.number(),
|
88
|
+
});
|
27
89
|
class ImagesError extends Error {
|
28
90
|
images;
|
29
91
|
}
|
@@ -32,6 +94,8 @@ var TEST_EVENTS;
|
|
32
94
|
(function (TEST_EVENTS) {
|
33
95
|
TEST_EVENTS["RUN_BEGIN"] = "start";
|
34
96
|
TEST_EVENTS["RUN_END"] = "end";
|
97
|
+
TEST_EVENTS["SUITE_BEGIN"] = "suite";
|
98
|
+
TEST_EVENTS["SUITE_END"] = "suite end";
|
35
99
|
TEST_EVENTS["TEST_BEGIN"] = "test";
|
36
100
|
TEST_EVENTS["TEST_END"] = "test end";
|
37
101
|
TEST_EVENTS["TEST_FAIL"] = "fail";
|
package/dist/types.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|