@leav/e2e-test-utils 1.14.0-1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecordsClient.js","sourceRoot":"","sources":["../../src/clients/RecordsClient.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAC9C,+CAAuD;AACvD,4CAAuH;AAEvH,MAAa,aAAc,SAAQ,6BAAa;IACrC,KAAK,CAAC,cAAc,CAAC,cAAsB;QAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAC1C,8BAAkB,EAClB,CAAC,EAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,EAAC,IAAI,EAAE,kBAAkB,EAAC,CAAC,EAAC,CAAC,CACtG,CAAC;QAEF,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,yBAAS,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,sBAAU,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,OAAO,GAAG,MAAM,GAAG,wBAAwB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,8BAA8B,CAAC,WAAqB;QAC7D,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAC,OAAO,EAAE,SAAS,EAAC,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAG,eAAe,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;YACrD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAEzC,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAC,CAAC,CAAC;YAEzE,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAhCD,sCAgCC"}
@@ -0,0 +1,10 @@
1
+ import { TaskStatus } from '../_gqlTypes';
2
+ import { GenericClient } from './GenericClient';
3
+ export interface ITask {
4
+ id: string;
5
+ status: TaskStatus;
6
+ }
7
+ export declare class TasksClient extends GenericClient {
8
+ getTask(taskId: string): Promise<ITask>;
9
+ waitForTaskCompletion(taskId: string, timeout?: number, interval?: number): Promise<ITask>;
10
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TasksClient = void 0;
4
+ /* eslint-disable no-console */
5
+ const _gqlTypes_1 = require("../_gqlTypes");
6
+ const GenericClient_1 = require("./GenericClient");
7
+ class TasksClient extends GenericClient_1.GenericClient {
8
+ async getTask(taskId) {
9
+ const res = await this.baseSdk.GetTasks({
10
+ filters: { id: taskId },
11
+ });
12
+ return res.tasks.list[0];
13
+ }
14
+ async waitForTaskCompletion(taskId, timeout = 30000, interval = 50) {
15
+ console.info(`wait for completion task id ${taskId}`);
16
+ const start = Date.now();
17
+ while (Date.now() - start < timeout) {
18
+ const task = await this.getTask(taskId);
19
+ if (task.status === _gqlTypes_1.TaskStatus.DONE || task.status === _gqlTypes_1.TaskStatus.FAILED) {
20
+ return task;
21
+ }
22
+ await new Promise(resolve => setTimeout(resolve, interval));
23
+ }
24
+ throw new Error(`Task ${taskId} did not complete within ${timeout}ms`);
25
+ }
26
+ }
27
+ exports.TasksClient = TasksClient;
28
+ //# sourceMappingURL=TasksClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksClient.js","sourceRoot":"","sources":["../../src/clients/TasksClient.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,4CAAwC;AACxC,mDAA8C;AAO9C,MAAa,WAAY,SAAQ,6BAAa;IACnC,KAAK,CAAC,OAAO,CAAC,MAAc;QAC/B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,OAAO,EAAE,EAAC,EAAE,EAAE,MAAM,EAAC;SACxB,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,OAAO,GAAG,KAAK,EAAE,QAAQ,GAAG,EAAE;QAC7E,OAAO,CAAC,IAAI,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,MAAM,KAAK,sBAAU,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,sBAAU,CAAC,MAAM,EAAE,CAAC;gBACvE,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,QAAQ,MAAM,4BAA4B,OAAO,IAAI,CAAC,CAAC;IAC3E,CAAC;CACJ;AApBD,kCAoBC"}
@@ -0,0 +1,3 @@
1
+ export * from './GenericClient';
2
+ export * from './TasksClient';
3
+ export * from './RecordsClient';
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./GenericClient"), exports);
18
+ __exportStar(require("./TasksClient"), exports);
19
+ __exportStar(require("./RecordsClient"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,gDAA8B;AAC9B,kDAAgC"}
@@ -0,0 +1,3 @@
1
+ export * from './baseConfig';
2
+ export * from './clients';
3
+ export * from './playwright';
package/dist/index.js ADDED
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./baseConfig"), exports);
18
+ __exportStar(require("./clients"), exports);
19
+ __exportStar(require("./playwright"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4CAA0B;AAC1B,+CAA6B"}
@@ -0,0 +1 @@
1
+ export * from './polyfillCryptoRandomUUID';
@@ -0,0 +1,18 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./polyfillCryptoRandomUUID"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/playwright/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C"}
@@ -0,0 +1,2 @@
1
+ import { type test as Test } from '@playwright/test';
2
+ export declare function setupCryptoRandomUUIDPolyfill(test: typeof Test): void;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupCryptoRandomUUIDPolyfill = setupCryptoRandomUUIDPolyfill;
4
+ function setupCryptoRandomUUIDPolyfill(test) {
5
+ test.beforeEach(async ({ page }) => {
6
+ // Fake implementation of crypto.randomUUID for http in gitlab-ci (http://leav_core:4001)
7
+ // It is not possible to name gitlab-ci service with localhost or leav_core.localhost
8
+ // Setup https is not an easy task
9
+ await page.addInitScript(() => {
10
+ if (typeof window.crypto.randomUUID === 'undefined') {
11
+ window.crypto.randomUUID = () =>
12
+ // @ts-ignore
13
+ 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
14
+ // eslint-disable-next-line no-bitwise
15
+ const r = (Math.random() * 16) | 0;
16
+ // eslint-disable-next-line no-bitwise
17
+ const v = c === 'x' ? r : (r & 0x3) | 0x8;
18
+ return v.toString(16);
19
+ });
20
+ }
21
+ });
22
+ });
23
+ }
24
+ //# sourceMappingURL=polyfillCryptoRandomUUID.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polyfillCryptoRandomUUID.js","sourceRoot":"","sources":["../../src/playwright/polyfillCryptoRandomUUID.ts"],"names":[],"mappings":";;AAEA,sEAmBC;AAnBD,SAAgB,6BAA6B,CAAC,IAAiB;IAC3D,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAC,IAAI,EAAC,EAAE,EAAE;QAC7B,yFAAyF;QACzF,qFAAqF;QACrF,kCAAkC;QAClC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;YAC1B,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;gBAClD,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,EAAE;gBAC5B,aAAa;gBACb,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;oBACxD,sCAAsC;oBACtC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;oBACnC,sCAAsC;oBACtC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;oBAC1C,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;YACX,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
package/package.json ADDED
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "@leav/e2e-test-utils",
3
+ "version": "1.14.0-1",
4
+ "description": "Basic utilities for e2e tests, setup data",
5
+ "main": "./dist/index",
6
+ "publishConfig": {
7
+ "main": "./dist/index"
8
+ },
9
+ "files": [
10
+ "dist"
11
+ ],
12
+ "scripts": {
13
+ "graphql-generate": "graphql-codegen --config ./codegen.ts",
14
+ "build": "tsc --build tsconfig.build.json",
15
+ "clean": "rm -rf dist dist-spec tsconfig.build.tsbuildinfo",
16
+ "tscheck": "tsc -b tsconfig.build.json",
17
+ "tscheck:watch": "tsc -b -w tsconfig.json",
18
+ "publish": "yarn npm publish --access public",
19
+ "get-version": "jq -r '.version' package.json",
20
+ "set-version": "jq --arg v $1 '.version = $v' package.json > package.tmp.json && mv package.tmp.json package.json"
21
+ },
22
+ "dependencies": {
23
+ "graphql": "16.14.0",
24
+ "graphql-request": "7.4.0",
25
+ "graphql-tag": "2.12.6"
26
+ },
27
+ "devDependencies": {
28
+ "@graphql-codegen/add": "5.0.3",
29
+ "@graphql-codegen/cli": "6.3.1",
30
+ "@graphql-codegen/client-preset": "4.8.3",
31
+ "@graphql-codegen/typescript": "5.0.10",
32
+ "@graphql-codegen/typescript-graphql-request": "6.4.0",
33
+ "@graphql-codegen/typescript-operations": "5.1.0",
34
+ "@playwright/test": "1.60.0",
35
+ "typescript": "5.9.3"
36
+ }
37
+ }