creevey 0.10.0-beta.31 → 0.10.0-beta.33
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/README.md +19 -41
- package/dist/client/addon/withCreevey.js +1 -0
- package/dist/client/addon/withCreevey.js.map +1 -1
- package/dist/client/shared/components/ResultsPage.d.ts +1 -1
- package/dist/client/web/CreeveyApp.js +1 -0
- package/dist/client/web/CreeveyApp.js.map +1 -1
- package/dist/server/docker.d.ts +1 -1
- package/dist/server/docker.js +21 -14
- package/dist/server/docker.js.map +1 -1
- package/dist/server/index.js +9 -10
- package/dist/server/index.js.map +1 -1
- package/dist/server/playwright/docker-file.d.ts +1 -2
- package/dist/server/playwright/docker-file.js +10 -4
- 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/internal.d.ts +3 -4
- package/dist/server/playwright/internal.js +48 -37
- package/dist/server/playwright/internal.js.map +1 -1
- package/dist/server/playwright/webdriver.js +4 -7
- package/dist/server/playwright/webdriver.js.map +1 -1
- package/dist/server/selenium/internal.js +5 -12
- package/dist/server/selenium/internal.js.map +1 -1
- package/dist/server/selenium/webdriver.js +4 -8
- package/dist/server/selenium/webdriver.js.map +1 -1
- package/dist/server/telemetry.js +2 -2
- package/dist/server/utils.d.ts +1 -2
- package/dist/server/utils.js +11 -8
- package/dist/server/utils.js.map +1 -1
- package/dist/server/webdriver.d.ts +2 -0
- package/dist/server/webdriver.js +13 -1
- package/dist/server/webdriver.js.map +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/types.d.ts +0 -2
- package/dist/types.js.map +1 -1
- package/docs/cli.md +12 -0
- package/docs/config.md +178 -167
- package/docs/storybook.md +60 -0
- package/docs/tests.md +50 -45
- package/package.json +1 -1
- package/src/client/addon/withCreevey.ts +1 -0
- package/src/client/web/CreeveyApp.tsx +1 -0
- package/src/server/docker.ts +24 -13
- package/src/server/index.ts +11 -14
- package/src/server/playwright/docker-file.ts +12 -5
- package/src/server/playwright/docker.ts +16 -3
- package/src/server/playwright/index-source.mjs +16 -0
- package/src/server/playwright/internal.ts +78 -52
- package/src/server/playwright/webdriver.ts +4 -7
- package/src/server/selenium/internal.ts +5 -12
- package/src/server/selenium/webdriver.ts +4 -8
- package/src/server/telemetry.ts +2 -2
- package/src/server/utils.ts +33 -25
- package/src/server/webdriver.ts +13 -0
- package/src/server/worker/context.ts +14 -0
- package/src/types.ts +0 -2
package/README.md
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
[<img width="274" alt="Creevey" src="https://user-images.githubusercontent.com/4607770/220418756-89cf4f54-ccb7-4086-a74c-a044ea1d2a61.png">](https://harrypotter.fandom.com/wiki/Colin_Creevey)
|
2
2
|
|
3
|
-
**IMPORTANT** _Looking for any help with maintaining_
|
4
|
-
|
5
3
|
Cross-browser screenshot testing tool for [Storybook](https://storybook.js.org/) with fancy UI Runner.
|
6
4
|
|
7
5
|
[](https://www.npmjs.com/package/creevey)
|
@@ -28,19 +26,20 @@ It named after [Colin Creevey](https://harrypotter.fandom.com/wiki/Colin_Creevey
|
|
28
26
|
- [Pre-requisites](#pre-requisites)
|
29
27
|
- [How to Start](#how-to-start)
|
30
28
|
- [Comparison with other tools](#comparison-with-other-tools)
|
31
|
-
- [Config
|
32
|
-
- [
|
33
|
-
-
|
34
|
-
|
35
|
-
|
29
|
+
- [Config](docs/config.md)
|
30
|
+
- [CLI commands](docs/cli.md)
|
31
|
+
- [Storybook parameters](docs/storybook.md)
|
32
|
+
- [Write interactive tests](docs/tests.md)
|
33
|
+
- [Use your Selenium Grid (LambdaTest/BrowserStack/SauceLabs/etc)](docs/grid.md)
|
36
34
|
- [Future plans](#future-plans)
|
37
35
|
- [Known issues](#known-issues)
|
38
36
|
- [Used by](#used-by)
|
39
37
|
|
40
38
|
## Pre-requisites
|
41
39
|
|
42
|
-
- Make sure you have installed [Docker](https://www.docker.com/products/docker-desktop).
|
43
|
-
- Supported Storybook versions:
|
40
|
+
- Make sure you have installed [Docker](https://www.docker.com/products/docker-desktop). If you are going to use Selenium Grid or run screenshot tests exclusively in CI you don't need Docker in that case.
|
41
|
+
- Supported Storybook versions: >= 7.x.x
|
42
|
+
- Supported Node.js versions: >= 18.x.x
|
44
43
|
|
45
44
|
## How to start
|
46
45
|
|
@@ -53,44 +52,38 @@ yarn add -D creevey
|
|
53
52
|
- Add addon `creevey` into your storybook config
|
54
53
|
|
55
54
|
```js
|
56
|
-
// .storybook/main.
|
57
|
-
|
58
|
-
stories: [
|
59
|
-
/* ... */
|
60
|
-
],
|
55
|
+
// .storybook/main.ts
|
56
|
+
const config: StorybookConfig = {
|
57
|
+
stories: [ /* ... */ ],
|
61
58
|
addons: [
|
62
59
|
/* ... */
|
63
60
|
'creevey',
|
64
61
|
],
|
65
62
|
};
|
63
|
+
|
64
|
+
export default config;
|
66
65
|
```
|
67
66
|
|
68
|
-
- Start
|
67
|
+
- Start Creevey UI Runner, which starts Storybook automatically. (To start tests from CLI, run Creevey without `--ui` flag)
|
69
68
|
|
70
69
|
```bash
|
71
|
-
yarn
|
72
|
-
yarn creevey --ui
|
70
|
+
yarn creevey -s --ui
|
73
71
|
```
|
74
72
|
|
75
|
-
And that's it.
|
73
|
+
- Open [http://localhost:3000](http://localhost:3000) in your browser. And that's it.
|
76
74
|
|
77
|
-
**NOTE:** In first run you may noticed, that all your tests are failing, it because you don't have source screenshot images yet. If you think, that all images are acceptable, you
|
75
|
+
**NOTE:** In first run you may noticed, that all your tests are failing, it because you don't have source screenshot images yet. If you think, that all images are acceptable, you can approve them all from UI.
|
78
76
|
|
79
77
|
**NOTE:** Creevey captures screenshot of the `#storybook-root` element and sometimes you need to capture a whole browser viewport. To achieve this you could define `captureElement` Creevey parameter for story or kind. Or you may pass any different css selector.
|
80
78
|
|
81
79
|
```tsx
|
82
80
|
// stories/MyModal.stories.tsx
|
83
|
-
|
84
|
-
// NOTE: Define parameter for all stories
|
85
81
|
export default {
|
86
82
|
title: 'MyModal',
|
87
|
-
|
83
|
+
component: MyModal,
|
88
84
|
};
|
89
85
|
|
90
|
-
|
91
|
-
|
92
|
-
export const MyModalStory = () => <MyModal />;
|
93
|
-
MyModalStory.parameters = { creevey: { captureElement: null } };
|
86
|
+
export const MyModalStory = { creevey: { captureElement: null } };
|
94
87
|
```
|
95
88
|
|
96
89
|
## Comparison with other tools
|
@@ -109,19 +102,11 @@ MyModalStory.parameters = { creevey: { captureElement: null } };
|
|
109
102
|
|
110
103
|
## Future plans
|
111
104
|
|
112
|
-
- Allow use different webdrivers not only `selenium`, but also `puppeteer` or `playwright`.
|
113
|
-
- Add ability to ignore elements.
|
114
105
|
- Allow to define different viewport sizes for specific stories or capture story with different args.
|
115
106
|
- And more, check [TODO](TODO.md) for more details. Also feel free to ask about feature that you want
|
116
107
|
|
117
108
|
## Known issues
|
118
109
|
|
119
|
-
### Creevey is trying to build storybook but fail or tests don't work
|
120
|
-
|
121
|
-
This might happens because Creevey patches storybook webpack config and build nodejs bundle with stories meta information. And in some cases Creevey couldn't properly remove all unnecessary code cause of side-effects in stories files or you create stories dynamically. Try to rewrite such places. If it still doesn't help, [send to me](mailto:creevey@kich.dev) bundle that Creevey created (it located in `node_modules/creevey/.cache/creevey/storybook/main.js`)
|
122
|
-
|
123
|
-
A little bit later I'll add possibility to run tests without building that bundle, so it fixes this issue.
|
124
|
-
|
125
110
|
### Docker-in-Docker
|
126
111
|
|
127
112
|
Currently it's not possible to run Creevey in this configuration. I'll fix this in later versions.
|
@@ -138,13 +123,6 @@ This cause to flaky screenshots. Possible solutions:
|
|
138
123
|
- Replace border to box-shadow `border: 1px solid red` -> `box-shadow: 0 0 0 1px red`
|
139
124
|
- Set max retries to more than 5
|
140
125
|
|
141
|
-
### You can't directly import `selenium-webdriver` package in story file
|
142
|
-
|
143
|
-
Because tests defined in story parameters and `selenium-webdriver` depends on nodejs builtin packages. Storybook may fail to build browser bundle. To avoid import use these workarounds:
|
144
|
-
|
145
|
-
- `.findElement(By.css('#storybook-root'))` -> `.findElement({ css: '#storybook-root' })`
|
146
|
-
- `.sendKeys(Keys.ENTER)` -> `.sendKeys(this.keys.ENTER)`
|
147
|
-
|
148
126
|
## Used by
|
149
127
|
|
150
128
|
| [](https://whisk.com/) | [](https://kontur.ru/) | [](https://www.abbyy.com/) |
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"withCreevey.js","sourceRoot":"","sources":["../../../src/client/addon/withCreevey.ts"],"names":[],"mappings":";;;;;AAiJA,kCAiLC;
|
1
|
+
{"version":3,"file":"withCreevey.js","sourceRoot":"","sources":["../../../src/client/addon/withCreevey.ts"],"names":[],"mappings":"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"}
|
@@ -14,7 +14,7 @@ interface ResultsPageProps {
|
|
14
14
|
onRetryChange: (retry: number) => void;
|
15
15
|
}
|
16
16
|
export declare function ResultsPageInternal({ path, results, approved, theme, height, retry, imageName, onImageChange, onRetryChange, }: ResultsPageProps): JSX.Element;
|
17
|
-
export declare const ResultsPage: React.FC<Pick<ResultsPageProps, "approved" | "
|
17
|
+
export declare const ResultsPage: React.FC<Pick<ResultsPageProps, "approved" | "imageName" | "results" | "path" | "height" | "retry" | "onImageChange" | "onRetryChange" | "showTitle"> & {
|
18
18
|
theme?: Theme;
|
19
19
|
}>;
|
20
20
|
export {};
|
@@ -122,6 +122,7 @@ function CreeveyApp({ api, initialState }) {
|
|
122
122
|
handleGoToNextFailedTest();
|
123
123
|
}, [handleImageApproveNew, handleGoToNextFailedTest]);
|
124
124
|
const handleApproveAll = (0, react_1.useCallback)(() => {
|
125
|
+
// TODO Update handled incorrectly
|
125
126
|
api?.approveAll();
|
126
127
|
}, [api]);
|
127
128
|
const handleStart = (0, react_1.useCallback)((tests) => api?.start((0, helpers_js_1.getCheckedTests)(tests).map((test) => test.id)), [api]);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"CreeveyApp.js","sourceRoot":"","sources":["../../../src/client/web/CreeveyApp.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,
|
1
|
+
{"version":3,"file":"CreeveyApp.js","sourceRoot":"","sources":["../../../src/client/web/CreeveyApp.tsx"],"names":[],"mappings":"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"}
|
package/dist/server/docker.d.ts
CHANGED
@@ -3,5 +3,5 @@ export declare function pullImages(images: string[], { auth, platform }?: {
|
|
3
3
|
auth?: DockerAuth;
|
4
4
|
platform?: string;
|
5
5
|
}): Promise<void>;
|
6
|
-
export declare function buildImage(imageName: string, dockerfile: string): Promise<void>;
|
6
|
+
export declare function buildImage(imageName: string, version: string, dockerfile: string): Promise<void>;
|
7
7
|
export declare function runImage(image: string, args: string[], options: Record<string, unknown>, debug: boolean): Promise<string>;
|
package/dist/server/docker.js
CHANGED
@@ -10,8 +10,8 @@ const tar_stream_1 = __importDefault(require("tar-stream"));
|
|
10
10
|
const loglevel_1 = __importDefault(require("loglevel"));
|
11
11
|
const stream_1 = require("stream");
|
12
12
|
const dockerode_1 = __importDefault(require("dockerode"));
|
13
|
-
const messages_js_1 = require("./messages.js");
|
14
13
|
const logger_js_1 = require("./logger.js");
|
14
|
+
const context_js_1 = require("./worker/context.js");
|
15
15
|
const docker = new dockerode_1.default();
|
16
16
|
class DevNull extends stream_1.Writable {
|
17
17
|
_write(_chunk, _encoding, callback) {
|
@@ -55,10 +55,11 @@ async function pullImages(images, { auth, platform } = {}) {
|
|
55
55
|
});
|
56
56
|
}
|
57
57
|
}
|
58
|
-
async function buildImage(imageName, dockerfile) {
|
58
|
+
async function buildImage(imageName, version, dockerfile) {
|
59
59
|
const images = await docker.listImages({ filters: { label: [`creevey=${imageName}`] } });
|
60
|
-
|
61
|
-
|
60
|
+
const containers = await docker.listContainers({ all: true, filters: { label: [`creevey=${imageName}`] } });
|
61
|
+
if (containers.length > 0) {
|
62
|
+
await Promise.all(containers.map(async (info) => {
|
62
63
|
const container = docker.getContainer(info.Id);
|
63
64
|
try {
|
64
65
|
await container.remove({ force: true });
|
@@ -67,6 +68,20 @@ async function buildImage(imageName, dockerfile) {
|
|
67
68
|
/* noop */
|
68
69
|
}
|
69
70
|
}));
|
71
|
+
}
|
72
|
+
const oldImages = images.filter((info) => info.Labels.version !== version);
|
73
|
+
if (oldImages.length > 0) {
|
74
|
+
await Promise.all(oldImages.map(async (info) => {
|
75
|
+
const image = docker.getImage(info.Id);
|
76
|
+
try {
|
77
|
+
await image.remove({ force: true });
|
78
|
+
}
|
79
|
+
catch {
|
80
|
+
/* noop */
|
81
|
+
}
|
82
|
+
}));
|
83
|
+
}
|
84
|
+
if (oldImages.length !== images.length) {
|
70
85
|
(0, logger_js_1.logger)().info(`Image ${imageName} already exists`);
|
71
86
|
return;
|
72
87
|
}
|
@@ -84,7 +99,7 @@ async function buildImage(imageName, dockerfile) {
|
|
84
99
|
// @ts-expect-error Type incompatibility AsyncIterator and AsyncIterableIterator
|
85
100
|
pack,
|
86
101
|
// TODO Support buildkit decode grpc (version: '2')
|
87
|
-
{ t: imageName, labels: { creevey: imageName }, version: '1' }, (buildError, stream) => {
|
102
|
+
{ t: imageName, labels: { creevey: imageName, version }, version: '1' }, (buildError, stream) => {
|
88
103
|
if (buildError || !stream) {
|
89
104
|
// spinner.error(buildError?.message);
|
90
105
|
reject(buildError ?? new Error('Unknown error'));
|
@@ -127,15 +142,7 @@ async function runImage(image, args, options, debug) {
|
|
127
142
|
});
|
128
143
|
return new Promise((resolve) => {
|
129
144
|
hub.once('container', (container) => {
|
130
|
-
|
131
|
-
(0, messages_js_1.subscribeOn)('shutdown', async () => {
|
132
|
-
try {
|
133
|
-
await container.remove({ force: true });
|
134
|
-
}
|
135
|
-
catch {
|
136
|
-
/* noop */
|
137
|
-
}
|
138
|
-
});
|
145
|
+
(0, context_js_1.setWorkerContainer)(container);
|
139
146
|
});
|
140
147
|
hub.once('start', (container) => void container.inspect().then((info) => {
|
141
148
|
resolve(info.NetworkSettings.Networks.bridge.IPAddress);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/server/docker.ts"],"names":[],"mappings":";;;;;AAgBA,gCA0CC;AAED,
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/server/docker.ts"],"names":[],"mappings":"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"}
|
package/dist/server/index.js
CHANGED
@@ -12,13 +12,13 @@ const commands_1 = require("package-manager-detector/commands");
|
|
12
12
|
const config_js_1 = require("./config.js");
|
13
13
|
const types_js_1 = require("../types.js");
|
14
14
|
const logger_js_1 = require("./logger.js");
|
15
|
+
const connection_js_1 = require("./connection.js");
|
15
16
|
const webdriver_js_1 = require("./selenium/webdriver.js");
|
16
17
|
const webdriver_js_2 = require("./webdriver.js");
|
17
18
|
const utils_js_1 = require("./utils.js");
|
18
19
|
const messages_js_1 = require("./messages.js");
|
19
20
|
const docker_js_1 = require("./docker.js");
|
20
21
|
const promises_1 = require("fs/promises");
|
21
|
-
const connection_js_1 = require("./connection.js");
|
22
22
|
const assert_1 = __importDefault(require("assert"));
|
23
23
|
async function startWebdriverServer(browser, config, options) {
|
24
24
|
if (config.webdriver === webdriver_js_1.SeleniumWebdriver) {
|
@@ -41,7 +41,7 @@ async function startWebdriverServer(browser, config, options) {
|
|
41
41
|
if (cluster_1.default.isPrimary)
|
42
42
|
return undefined;
|
43
43
|
const { browserName } = config.browsers[browser];
|
44
|
-
return `creevey://${(0, utils_js_1.resolvePlaywrightBrowserType)(browserName)}
|
44
|
+
return `creevey://${(0, utils_js_1.resolvePlaywrightBrowserType)(browserName)}`;
|
45
45
|
}
|
46
46
|
const { default: { version }, } = await import('playwright-core/package.json', { with: { type: 'json' } });
|
47
47
|
if (cluster_1.default.isWorker) {
|
@@ -49,18 +49,17 @@ async function startWebdriverServer(browser, config, options) {
|
|
49
49
|
const { startPlaywrightContainer } = await import('./playwright/docker.js');
|
50
50
|
const { browserName } = config.browsers[browser];
|
51
51
|
const imageName = `creevey/${browserName}:v${version}`;
|
52
|
-
const host = await startPlaywrightContainer(imageName, options.debug);
|
52
|
+
const host = await startPlaywrightContainer(imageName, browser, config, options.debug);
|
53
53
|
return host;
|
54
54
|
}
|
55
55
|
else {
|
56
56
|
const { playwrightDockerFile } = await import('./playwright/docker-file.js');
|
57
|
-
const
|
58
|
-
|
59
|
-
|
60
|
-
await Promise.all(browsers.map(async ([browserName, launchOptions]) => {
|
57
|
+
const { default: { version: creeveyVersion }, } = await import('../../package.json', { with: { type: 'json' } });
|
58
|
+
const browsers = [...new Set(Object.values(config.browsers).map((c) => c.browserName))];
|
59
|
+
await Promise.all(browsers.map(async (browserName) => {
|
61
60
|
const imageName = `creevey/${browserName}:v${version}`;
|
62
|
-
const dockerfile = playwrightDockerFile(browserName, version
|
63
|
-
await (0, docker_js_1.buildImage)(imageName, dockerfile);
|
61
|
+
const dockerfile = await playwrightDockerFile(browserName, version);
|
62
|
+
await (0, docker_js_1.buildImage)(imageName, creeveyVersion, dockerfile);
|
64
63
|
}));
|
65
64
|
const { default: getPort } = await import('get-port');
|
66
65
|
cluster_1.default.on('message', (worker, message) => {
|
@@ -93,7 +92,7 @@ async function default_1(options) {
|
|
93
92
|
!update) {
|
94
93
|
gridUrl = await startWebdriverServer(browser, config, options);
|
95
94
|
}
|
96
|
-
if (cluster_1.default.isPrimary) {
|
95
|
+
if (cluster_1.default.isPrimary && process.env.CI !== 'true') {
|
97
96
|
const [localUrl, remoteUrl] = (0, connection_js_1.getStorybookUrl)(config, options);
|
98
97
|
const pm = (0, detect_1.getUserAgent)();
|
99
98
|
(0, assert_1.default)(pm, new Error('Failed to detect current package manager'));
|
package/dist/server/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
export declare function playwrightDockerFile(browser: string, version: string, serverOptions?: LaunchOptions): string;
|
1
|
+
export declare function playwrightDockerFile(browser: string, version: string): Promise<string>;
|
@@ -4,11 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.playwrightDockerFile = playwrightDockerFile;
|
7
|
+
const promises_1 = require("fs/promises");
|
8
|
+
const url_1 = require("url");
|
7
9
|
const semver_1 = __importDefault(require("semver"));
|
8
10
|
const shelljs_1 = require("shelljs");
|
9
|
-
const
|
11
|
+
const importMetaUrl = (0, url_1.pathToFileURL)(__filename).href;
|
10
12
|
// TODO Support custom docker images
|
11
|
-
function playwrightDockerFile(browser, version
|
13
|
+
async function playwrightDockerFile(browser, version) {
|
12
14
|
const sv = semver_1.default.coerce(version);
|
13
15
|
let npmRegistry;
|
14
16
|
try {
|
@@ -17,14 +19,18 @@ function playwrightDockerFile(browser, version, serverOptions) {
|
|
17
19
|
catch {
|
18
20
|
/* noop */
|
19
21
|
}
|
22
|
+
const indexJs = await (0, promises_1.readFile)(new URL('./index-source.mjs', importMetaUrl), 'utf-8');
|
20
23
|
return `
|
21
24
|
FROM node:lts
|
22
25
|
|
23
26
|
WORKDIR /creevey
|
24
27
|
|
25
28
|
RUN echo "{ \\"type\\": \\"module\\" }" > package.json && \\
|
26
|
-
|
27
|
-
|
29
|
+
${indexJs
|
30
|
+
.split('\n')
|
31
|
+
.map((line) => `echo "${line.replace(/"/g, '\\"')}" >> index.js && \\`)
|
32
|
+
.join('\n')}
|
33
|
+
${npmRegistry
|
28
34
|
? `
|
29
35
|
echo "registry=${npmRegistry}" > .npmrc && \\`
|
30
36
|
: ''}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"docker-file.js","sourceRoot":"","sources":["../../../src/server/playwright/docker-file.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"docker-file.js","sourceRoot":"","sources":["../../../src/server/playwright/docker-file.ts"],"names":[],"mappings":";;;;;AAQA,oDAmCC;AA3CD,0CAAuC;AACvC,6BAAoC;AACpC,oDAA4B;AAC5B,qCAA+B;AAE/B,MAAM,aAAa,GAAG,IAAA,mBAAa,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC;AAErD,oCAAoC;AAC7B,KAAK,UAAU,oBAAoB,CAAC,OAAe,EAAE,OAAe;IACzE,MAAM,EAAE,GAAG,gBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElC,IAAI,WAAW,CAAC;IAChB,IAAI,CAAC;QACH,WAAW,GAAG,IAAA,cAAI,EAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAChF,CAAC;IAAC,MAAM,CAAC;QACP,UAAU;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;IAEtF,OAAO;;;;;;MAMH,OAAO;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,qBAAqB,CAAC;SACtE,IAAI,CAAC,IAAI,CAAC;MAEX,WAAW;QACT,CAAC,CAAC;qBACW,WAAW,kBAAkB;QAC1C,CAAC,CAAC,EACN;2BACuB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;uBAC/B,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,wBAAwB,OAAO;;;;;CAKhF,CAAC;AACF,CAAC"}
|
@@ -1 +1,2 @@
|
|
1
|
-
|
1
|
+
import type { Config } from '../../types';
|
2
|
+
export declare function startPlaywrightContainer(imageName: string, browser: string, config: Config, debug: boolean): Promise<string>;
|
@@ -1,11 +1,16 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
6
|
exports.startPlaywrightContainer = startPlaywrightContainer;
|
7
|
+
const assert_1 = __importDefault(require("assert"));
|
4
8
|
const docker_1 = require("../docker");
|
5
9
|
const messages_1 = require("../messages");
|
6
10
|
const utils_1 = require("../utils");
|
7
11
|
const webdriver_1 = require("../webdriver");
|
8
|
-
async function startPlaywrightContainer(imageName, debug) {
|
12
|
+
async function startPlaywrightContainer(imageName, browser, config, debug) {
|
13
|
+
const { browserName, playwrightOptions } = config.browsers[browser];
|
9
14
|
const port = await new Promise((resolve) => {
|
10
15
|
(0, messages_1.subscribeOn)('worker', (message) => {
|
11
16
|
if (message.type == 'port') {
|
@@ -14,10 +19,13 @@ async function startPlaywrightContainer(imageName, debug) {
|
|
14
19
|
});
|
15
20
|
(0, messages_1.emitWorkerMessage)({ type: 'port', payload: { port: -1 } });
|
16
21
|
});
|
17
|
-
const
|
22
|
+
const cacheDir = await (0, utils_1.getCreeveyCache)();
|
23
|
+
(0, assert_1.default)(cacheDir, "Couldn't get cache directory");
|
24
|
+
const host = await (0, docker_1.runImage)(imageName, [JSON.stringify({ ...playwrightOptions, browser: (0, utils_1.resolvePlaywrightBrowserType)(browserName) })], {
|
18
25
|
ExposedPorts: { [`${port}/tcp`]: {} },
|
19
26
|
HostConfig: {
|
20
27
|
PortBindings: { ['4444/tcp']: [{ HostPort: `${port}` }] },
|
28
|
+
Binds: [`${cacheDir}/${process.pid}:/creevey/traces`],
|
21
29
|
},
|
22
30
|
}, debug);
|
23
31
|
const gridUrl = `ws://localhost:${port}/creevey`;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../src/server/playwright/docker.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../src/server/playwright/docker.ts"],"names":[],"mappings":";;;;;AAOA,4DAoCC;AA3CD,oDAA4B;AAC5B,sCAAqC;AACrC,0CAA6D;AAC7D,oCAAyF;AACzF,4CAAgD;AAGzC,KAAK,UAAU,wBAAwB,CAC5C,SAAiB,EACjB,OAAe,EACf,MAAc,EACd,KAAc;IAEd,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAwB,CAAC;IAC3F,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QACjD,IAAA,sBAAW,EAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;YAChC,IAAI,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC3B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAA,4BAAiB,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAe,GAAE,CAAC;IAEzC,IAAA,gBAAM,EAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;IAEjD,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAQ,EACzB,SAAS,EACT,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,iBAAiB,EAAE,OAAO,EAAE,IAAA,oCAA4B,EAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAC9F;QACE,YAAY,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE;QACrC,UAAU,EAAE;YACV,YAAY,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACzD,KAAK,EAAE,CAAC,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,kBAAkB,CAAC;SACtD;KACF,EACD,KAAK,CACN,CAAC;IAEF,MAAM,OAAO,GAAG,kBAAkB,IAAI,UAAU,CAAC;IAEjD,OAAO,sBAAc,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,4BAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAC5E,CAAC"}
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import { Browser, Page } from 'playwright-core';
|
2
|
-
import { Config, Options, StoriesRaw, StoryInput, StorybookGlobals } from '../../types';
|
1
|
+
import { Browser, BrowserContext, Page } from 'playwright-core';
|
3
2
|
import type { Args } from '@storybook/csf';
|
3
|
+
import { Config, Options, StoriesRaw, StoryInput, StorybookGlobals } from '../../types';
|
4
4
|
export declare class InternalBrowser {
|
5
5
|
#private;
|
6
|
-
constructor(browser: Browser, page: Page, port: number, storybookGlobals?: StorybookGlobals);
|
6
|
+
constructor(browser: Browser, context: BrowserContext, page: Page, traceDir: string, port: number, debug: boolean, storybookGlobals?: StorybookGlobals);
|
7
7
|
get browser(): Page;
|
8
8
|
get sessionId(): string;
|
9
9
|
closeBrowser(): Promise<void>;
|
@@ -21,6 +21,5 @@ export declare class InternalBrowser {
|
|
21
21
|
private updateStorybookGlobals;
|
22
22
|
private resolveCreeveyHost;
|
23
23
|
private updateBrowserGlobalVariables;
|
24
|
-
private resizeViewport;
|
25
24
|
private resetMousePosition;
|
26
25
|
}
|