@applitools/core 3.9.0 → 3.10.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/CHANGELOG.md +180 -0
- package/dist/abort.js +40 -0
- package/dist/automation/abort.js +49 -0
- package/dist/{ufg → automation}/close.js +22 -6
- package/dist/automation/get-nml-client.js +3 -3
- package/dist/{ufg → automation}/get-results.js +4 -4
- package/dist/check-and-close.js +1 -10
- package/dist/check.js +8 -17
- package/dist/classic/check-and-close.js +111 -69
- package/dist/classic/check.js +103 -63
- package/dist/classic/core.js +4 -4
- package/dist/classic/get-base-eyes.js +29 -7
- package/dist/classic/open-eyes.js +42 -56
- package/dist/classic/utils/extract-default-renderers.js +72 -0
- package/dist/classic/utils/take-screenshots.js +60 -0
- package/dist/close.js +6 -3
- package/dist/core.js +4 -4
- package/dist/get-typed-eyes.js +3 -5
- package/dist/make-manager.js +2 -2
- package/dist/open-eyes.js +13 -10
- package/dist/ufg/check-and-close.js +61 -54
- package/dist/ufg/check.js +62 -60
- package/dist/ufg/core.js +2 -2
- package/dist/ufg/get-base-eyes.js +23 -13
- package/dist/ufg/open-eyes.js +24 -37
- package/dist/ufg/utils/extract-default-renderers.js +22 -0
- package/dist/universal/core.js +1 -0
- package/dist/universal/spec-driver.js +43 -50
- package/package.json +23 -28
- package/types/abort.d.ts +13 -0
- package/types/{classic → automation}/abort.d.ts +5 -4
- package/types/{classic → automation}/close.d.ts +3 -4
- package/types/automation/get-nml-client.d.ts +3 -3
- package/types/automation/get-results.d.ts +11 -0
- package/types/automation/types.d.ts +78 -7
- package/types/{ufg → automation}/utils/uniquify-renderers.d.ts +1 -1
- package/types/check.d.ts +2 -2
- package/types/classic/check-and-close.d.ts +11 -4
- package/types/classic/check.d.ts +6 -3
- package/types/classic/core.d.ts +2 -1
- package/types/classic/get-base-eyes.d.ts +4 -8
- package/types/classic/open-eyes.d.ts +3 -4
- package/types/classic/types.d.ts +3 -4
- package/types/classic/utils/extract-default-renderers.d.ts +9 -0
- package/types/classic/utils/take-screenshots.d.ts +18 -0
- package/types/close.d.ts +3 -2
- package/types/core.d.ts +7 -1
- package/types/get-typed-eyes.d.ts +5 -4
- package/types/make-manager.d.ts +7 -1
- package/types/open-eyes.d.ts +7 -1
- package/types/types.d.ts +3 -6
- package/types/ufg/check-and-close.d.ts +8 -12
- package/types/ufg/check.d.ts +4 -9
- package/types/ufg/core.d.ts +3 -3
- package/types/ufg/get-base-eyes.d.ts +3 -7
- package/types/ufg/open-eyes.d.ts +3 -4
- package/types/ufg/types.d.ts +3 -24
- package/types/ufg/utils/extract-default-renderers.d.ts +5 -0
- package/types/universal/spec-driver.d.ts +6 -5
- package/types/universal/types.d.ts +54 -50
- package/dist/classic/abort.js +0 -23
- package/dist/classic/close.js +0 -23
- package/dist/ufg/abort.js +0 -33
- package/types/ufg/abort.d.ts +0 -21
- package/types/ufg/close.d.ts +0 -19
- package/types/ufg/get-results.d.ts +0 -16
- /package/dist/{ufg → automation}/utils/uniquify-renderers.js +0 -0
package/types/classic/types.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type * as BaseCore from '@applitools/core-base/types';
|
|
2
1
|
import type * as AutomationCore from '../automation/types';
|
|
3
2
|
import { type SpecType } from '@applitools/driver';
|
|
4
3
|
import { type Logger } from '@applitools/logger';
|
|
@@ -8,7 +7,7 @@ export interface Core<TSpec extends SpecType> extends AutomationCore.Core<TSpec>
|
|
|
8
7
|
openEyes(options: {
|
|
9
8
|
target?: AutomationCore.DriverTarget<TSpec>;
|
|
10
9
|
settings: OpenSettings;
|
|
11
|
-
|
|
10
|
+
storage?: AutomationCore.EyesStorage;
|
|
12
11
|
logger?: Logger;
|
|
13
12
|
}): Promise<Eyes<TSpec>>;
|
|
14
13
|
}
|
|
@@ -19,7 +18,7 @@ export interface Eyes<TSpec extends SpecType> extends AutomationCore.Eyes<TSpec>
|
|
|
19
18
|
target?: AutomationCore.Target<TSpec>;
|
|
20
19
|
settings?: CheckSettings<TSpec>;
|
|
21
20
|
logger?: Logger;
|
|
22
|
-
}): Promise<
|
|
21
|
+
}): Promise<void>;
|
|
23
22
|
checkAndClose(options?: {
|
|
24
23
|
target?: AutomationCore.Target<TSpec>;
|
|
25
24
|
settings?: CheckSettings<TSpec> & AutomationCore.CloseSettings;
|
|
@@ -27,8 +26,8 @@ export interface Eyes<TSpec extends SpecType> extends AutomationCore.Eyes<TSpec>
|
|
|
27
26
|
}): Promise<void>;
|
|
28
27
|
}
|
|
29
28
|
export type OpenSettings = AutomationCore.OpenSettings & {
|
|
30
|
-
keepPlatformNameAsIs?: boolean;
|
|
31
29
|
useCeilForViewportSize?: boolean;
|
|
30
|
+
keepPlatformNameAsIs?: boolean;
|
|
32
31
|
};
|
|
33
32
|
export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings<TSpec> & {
|
|
34
33
|
retryTimeout?: number;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EnvironmentRenderer, Environment } from '../types';
|
|
2
|
+
import { type SpecType, type Driver } from '@applitools/driver';
|
|
3
|
+
export declare function extractDefaultRenderers<TSpec extends SpecType>({ driver, settings, }: {
|
|
4
|
+
driver?: Driver<TSpec>;
|
|
5
|
+
settings?: {
|
|
6
|
+
keepPlatformNameAsIs?: boolean;
|
|
7
|
+
environment?: Environment;
|
|
8
|
+
};
|
|
9
|
+
}): Promise<EnvironmentRenderer[]>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ScreenshotSettings, Renderer } from '../types';
|
|
2
|
+
import type { Target as BaseTarget } from '@applitools/core-base';
|
|
3
|
+
import { type Logger } from '@applitools/logger';
|
|
4
|
+
import { type SpecType, type Driver, type ElementReference } from '@applitools/driver';
|
|
5
|
+
import { type DomCaptureSettings } from './take-dom-capture';
|
|
6
|
+
export type ScreenshotsSettings<TSpec extends SpecType> = ScreenshotSettings<TSpec> & {
|
|
7
|
+
renderers: Renderer[];
|
|
8
|
+
regionsToCalculate?: ElementReference<TSpec>[];
|
|
9
|
+
calculateView?: boolean;
|
|
10
|
+
domSettings?: DomCaptureSettings;
|
|
11
|
+
};
|
|
12
|
+
export declare function takeScreenshots<TSpec extends SpecType>({ driver, settings, logger, }: {
|
|
13
|
+
driver: Driver<TSpec>;
|
|
14
|
+
settings: ScreenshotsSettings<TSpec>;
|
|
15
|
+
logger: Logger;
|
|
16
|
+
}): Promise<(BaseTarget & {
|
|
17
|
+
calculatedRegions: any;
|
|
18
|
+
})[]>;
|
package/types/close.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import type { Eyes, Config, CloseSettings } from './types';
|
|
1
|
+
import type { Eyes, Config, CloseSettings, Renderer } from './types';
|
|
2
2
|
import { type SpecType } from '@applitools/driver';
|
|
3
3
|
import { type Logger } from '@applitools/logger';
|
|
4
4
|
type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
5
5
|
eyes: Eyes<TSpec, TType>;
|
|
6
|
+
renderers?: Renderer[];
|
|
6
7
|
logger: Logger;
|
|
7
8
|
};
|
|
8
|
-
export declare function makeClose<TSpec extends SpecType, TType extends 'classic' | 'ufg'>({ eyes, logger: mainLogger, }: Options<TSpec, TType>): ({ settings, config, logger, }?: {
|
|
9
|
+
export declare function makeClose<TSpec extends SpecType, TType extends 'classic' | 'ufg'>({ eyes, renderers: defaultRenderers, logger: mainLogger, }: Options<TSpec, TType>): ({ settings, config, logger, }?: {
|
|
9
10
|
settings?: CloseSettings<TType> | undefined;
|
|
10
11
|
config?: Config<TSpec, TType> | undefined;
|
|
11
12
|
logger?: Logger | undefined;
|
package/types/core.d.ts
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import type { Core } from './types';
|
|
2
2
|
import type { Core as BaseCore } from '@applitools/core-base';
|
|
3
|
+
import { type UFGClient } from '@applitools/ufg-client';
|
|
4
|
+
import { type NMLClient } from '@applitools/nml-client';
|
|
3
5
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
4
6
|
import { type Logger } from '@applitools/logger';
|
|
5
7
|
type Options<TSpec extends SpecType> = {
|
|
6
8
|
spec?: SpecDriver<TSpec>;
|
|
9
|
+
clients?: {
|
|
10
|
+
ufg?: UFGClient;
|
|
11
|
+
nml?: NMLClient;
|
|
12
|
+
};
|
|
7
13
|
concurrency?: number;
|
|
8
14
|
base?: BaseCore;
|
|
9
15
|
agentId?: string;
|
|
@@ -11,5 +17,5 @@ type Options<TSpec extends SpecType> = {
|
|
|
11
17
|
cwd?: string;
|
|
12
18
|
logger?: Logger;
|
|
13
19
|
};
|
|
14
|
-
export declare function makeCore<TSpec extends SpecType>({ spec, concurrency, base: defaultBase, environment: defaultEnvironment, agentId, cwd, logger: defaultLogger, }?: Options<TSpec>): Core<TSpec, 'classic' | 'ufg'>;
|
|
20
|
+
export declare function makeCore<TSpec extends SpecType>({ spec, clients, concurrency, base: defaultBase, environment: defaultEnvironment, agentId, cwd, logger: defaultLogger, }?: Options<TSpec>): Core<TSpec, 'classic' | 'ufg'>;
|
|
15
21
|
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { DriverTarget, TypedCore, TypedEyes, OpenSettings } from './types';
|
|
1
|
+
import type { DriverTarget, TypedCore, TypedEyes, OpenSettings, Renderer } from './types';
|
|
2
2
|
import { type SpecType } from '@applitools/driver';
|
|
3
|
-
import { type RenderEnvironmentSettings } from '@applitools/ufg-client';
|
|
4
3
|
import { type Logger } from '@applitools/logger';
|
|
5
4
|
type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
6
5
|
type: TType;
|
|
@@ -11,9 +10,11 @@ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
|
11
10
|
};
|
|
12
11
|
logger: Logger;
|
|
13
12
|
};
|
|
14
|
-
export declare function makeGetTypedEyes<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg'>({ type: defaultType, settings: defaultSettings, target, cores, logger: mainLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type,
|
|
13
|
+
export declare function makeGetTypedEyes<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg'>({ type: defaultType, settings: defaultSettings, target, cores, logger: mainLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, logger, }?: {
|
|
15
14
|
type?: TType | undefined;
|
|
16
|
-
settings?:
|
|
15
|
+
settings?: {
|
|
16
|
+
renderers?: Renderer[] | undefined;
|
|
17
|
+
} | undefined;
|
|
17
18
|
logger?: Logger | undefined;
|
|
18
19
|
}) => Promise<TypedEyes<TSpec, TType>>;
|
|
19
20
|
export {};
|
package/types/make-manager.d.ts
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import type { Core, EyesManager, ManagerSettings } from './types';
|
|
2
2
|
import type { Core as BaseCore } from '@applitools/core-base';
|
|
3
|
+
import { type UFGClient } from '@applitools/ufg-client';
|
|
4
|
+
import { type NMLClient } from '@applitools/nml-client';
|
|
3
5
|
import { type Logger } from '@applitools/logger';
|
|
4
6
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
5
7
|
type Options<TSpec extends SpecType> = {
|
|
6
8
|
spec?: SpecDriver<TSpec>;
|
|
9
|
+
clients?: {
|
|
10
|
+
ufg?: UFGClient;
|
|
11
|
+
nml?: NMLClient;
|
|
12
|
+
};
|
|
7
13
|
concurrency?: number;
|
|
8
14
|
core: Core<TSpec>;
|
|
9
15
|
base?: BaseCore;
|
|
@@ -12,7 +18,7 @@ type Options<TSpec extends SpecType> = {
|
|
|
12
18
|
cwd?: string;
|
|
13
19
|
logger: Logger;
|
|
14
20
|
};
|
|
15
|
-
export declare function makeMakeManager<TSpec extends SpecType>({ spec, concurrency: defaultConcurrency, core, base, agentId: defaultAgentId, environment, cwd, logger: mainLogger, }: Options<TSpec>): <TType extends "classic" | "ufg" = "classic">({ type, settings, logger, }?: {
|
|
21
|
+
export declare function makeMakeManager<TSpec extends SpecType>({ spec, clients, concurrency: defaultConcurrency, core, base, agentId: defaultAgentId, environment, cwd, logger: mainLogger, }: Options<TSpec>): <TType extends "classic" | "ufg" = "classic">({ type, settings, logger, }?: {
|
|
16
22
|
type?: TType | undefined;
|
|
17
23
|
settings?: ManagerSettings | undefined;
|
|
18
24
|
logger?: Logger | undefined;
|
package/types/open-eyes.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { DriverTarget, Core, TypedCore, Batch, Eyes, Config, OpenSettings } from './types';
|
|
2
|
+
import { type UFGClient } from '@applitools/ufg-client';
|
|
3
|
+
import { type NMLClient } from '@applitools/nml-client';
|
|
2
4
|
import { type Logger } from '@applitools/logger';
|
|
3
5
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
4
6
|
type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
5
7
|
type?: TType;
|
|
8
|
+
clients?: {
|
|
9
|
+
ufg?: UFGClient;
|
|
10
|
+
nml?: NMLClient;
|
|
11
|
+
};
|
|
6
12
|
concurrency?: number;
|
|
7
13
|
batch?: Batch;
|
|
8
14
|
core: Core<TSpec, TType>;
|
|
@@ -13,7 +19,7 @@ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
|
13
19
|
environment?: Record<string, any>;
|
|
14
20
|
logger: Logger;
|
|
15
21
|
};
|
|
16
|
-
export declare function makeOpenEyes<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, concurrency, batch, core, cores, spec, environment, logger: mainLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, settings, config, target, logger, }: {
|
|
22
|
+
export declare function makeOpenEyes<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, clients, concurrency, batch, core, cores, spec, environment, logger: mainLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, settings, config, target, logger, }: {
|
|
17
23
|
type?: TType | undefined;
|
|
18
24
|
settings?: Partial<OpenSettings<TDefaultType> & OpenSettings<TType>> | undefined;
|
|
19
25
|
config?: (Config<TSpec, TDefaultType> & Config<TSpec, TType>) | undefined;
|
package/types/types.d.ts
CHANGED
|
@@ -4,9 +4,8 @@ import type * as ClassicCore from './classic/types';
|
|
|
4
4
|
import type * as UFGCore from './ufg/types';
|
|
5
5
|
import { type SpecType } from '@applitools/driver';
|
|
6
6
|
import { type Logger } from '@applitools/logger';
|
|
7
|
-
import { type Renderer } from '@applitools/ufg-client';
|
|
8
7
|
import { type ECClient, type ECClientSettings } from '@applitools/ec-client';
|
|
9
|
-
export { ECClient
|
|
8
|
+
export { ECClient };
|
|
10
9
|
export * from './automation/types';
|
|
11
10
|
export type TypedCore<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.Core<TSpec> : ClassicCore.Core<TSpec>;
|
|
12
11
|
export type TypedEyes<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.Eyes<TSpec> : ClassicCore.Eyes<TSpec>;
|
|
@@ -64,7 +63,6 @@ export interface Eyes<TSpec extends SpecType, TDefaultType extends 'classic' | '
|
|
|
64
63
|
readonly core: Core<TSpec, TDefaultType>;
|
|
65
64
|
getTypedEyes<TType extends 'classic' | 'ufg' = TDefaultType>(options?: {
|
|
66
65
|
type?: TType;
|
|
67
|
-
settings?: any;
|
|
68
66
|
logger?: Logger;
|
|
69
67
|
}): Promise<TypedEyes<TSpec, TType>>;
|
|
70
68
|
check<TType extends 'classic' | 'ufg' = TDefaultType>(options?: {
|
|
@@ -73,7 +71,7 @@ export interface Eyes<TSpec extends SpecType, TDefaultType extends 'classic' | '
|
|
|
73
71
|
settings?: Partial<CheckSettings<TSpec, TDefaultType> & CheckSettings<TSpec, TType>>;
|
|
74
72
|
config?: Config<TSpec, TDefaultType> & Config<TSpec, TType>;
|
|
75
73
|
logger?: Logger;
|
|
76
|
-
}): Promise<
|
|
74
|
+
}): Promise<void>;
|
|
77
75
|
checkAndClose<TType extends 'classic' | 'ufg' = TDefaultType>(options?: {
|
|
78
76
|
type?: TType;
|
|
79
77
|
target?: Target<TSpec, TType>;
|
|
@@ -122,12 +120,11 @@ export type GetEyesResultsSettings<TType extends 'classic' | 'ufg'> = GetResults
|
|
|
122
120
|
export type GetManagerResultsSettings<TType extends 'classic' | 'ufg'> = GetEyesResultsSettings<TType> & {
|
|
123
121
|
removeDuplicateTests?: boolean;
|
|
124
122
|
};
|
|
125
|
-
export type CheckResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckResult : ClassicCore.CheckResult;
|
|
126
123
|
export type TestResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.TestResult : ClassicCore.TestResult;
|
|
127
124
|
export interface TestResultContainer<TType extends 'classic' | 'ufg'> {
|
|
128
125
|
readonly error?: Error;
|
|
129
126
|
readonly result?: TestResult<TType>;
|
|
130
|
-
readonly renderer?: TType extends 'ufg' ? Renderer : never;
|
|
127
|
+
readonly renderer?: TType extends 'ufg' ? AutomationCore.Renderer : never;
|
|
131
128
|
readonly userTestId?: string;
|
|
132
129
|
}
|
|
133
130
|
export interface TestResultSummary<TType extends 'classic' | 'ufg'> {
|
|
@@ -1,27 +1,21 @@
|
|
|
1
1
|
import type { Region } from '@applitools/utils';
|
|
2
|
-
import type { DriverTarget, Target, Eyes, CheckSettings, CloseSettings } from './types';
|
|
3
|
-
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
4
|
-
import { type Renderer } from '@applitools/ufg-client';
|
|
2
|
+
import type { DriverTarget, Target, Eyes, CheckSettings, CloseSettings, Renderer } from './types';
|
|
5
3
|
import { type AbortSignal } from 'abort-controller';
|
|
6
4
|
import { type Logger } from '@applitools/logger';
|
|
7
5
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
8
6
|
type Options<TSpec extends SpecType> = {
|
|
9
7
|
eyes: Eyes<TSpec>;
|
|
10
|
-
storage: Map<string, Promise<{
|
|
11
|
-
renderer: Renderer;
|
|
12
|
-
eyes: BaseEyes;
|
|
13
|
-
}>[]>;
|
|
14
8
|
target?: DriverTarget<TSpec>;
|
|
9
|
+
renderers?: Renderer[];
|
|
15
10
|
spec?: SpecDriver<TSpec>;
|
|
16
11
|
signal?: AbortSignal;
|
|
17
12
|
logger: Logger;
|
|
18
13
|
};
|
|
19
|
-
export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes,
|
|
14
|
+
export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, target: defaultTarget, renderers: defaultRenderers, spec, signal, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
20
15
|
target?: Target<TSpec> | undefined;
|
|
21
16
|
settings?: (import("@applitools/core-base").CheckSettings<Region | import("@applitools/driver").ElementReference<TSpec>> & import("./types").ScreenshotSettings<TSpec> & {
|
|
22
|
-
renderers?:
|
|
23
|
-
|
|
24
|
-
})[] | undefined;
|
|
17
|
+
renderers?: Renderer[] | undefined;
|
|
18
|
+
} & {
|
|
25
19
|
hooks?: {
|
|
26
20
|
beforeCaptureScreenshot: string;
|
|
27
21
|
} | undefined;
|
|
@@ -36,7 +30,9 @@ export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, storag
|
|
|
36
30
|
domains?: string[] | undefined;
|
|
37
31
|
}) | undefined;
|
|
38
32
|
headers?: Record<string, string> | undefined;
|
|
39
|
-
} & CloseSettings
|
|
33
|
+
} & import("@applitools/core-base").CloseSettings & {
|
|
34
|
+
renderers?: Renderer[] | undefined;
|
|
35
|
+
}) | undefined;
|
|
40
36
|
logger?: Logger | undefined;
|
|
41
37
|
}) => Promise<void>;
|
|
42
38
|
export {};
|
package/types/ufg/check.d.ts
CHANGED
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
import type { DriverTarget, Target, Eyes, CheckSettings,
|
|
2
|
-
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
3
|
-
import { type Renderer } from '@applitools/ufg-client';
|
|
1
|
+
import type { DriverTarget, Target, Eyes, CheckSettings, Renderer } from './types';
|
|
4
2
|
import { type AbortSignal } from 'abort-controller';
|
|
5
3
|
import { type Logger } from '@applitools/logger';
|
|
6
4
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
7
5
|
type Options<TSpec extends SpecType> = {
|
|
8
6
|
eyes: Eyes<TSpec>;
|
|
9
|
-
storage: Map<string, Promise<{
|
|
10
|
-
renderer: Renderer;
|
|
11
|
-
eyes: BaseEyes;
|
|
12
|
-
}>[]>;
|
|
13
7
|
target?: DriverTarget<TSpec>;
|
|
8
|
+
renderers?: Renderer[];
|
|
14
9
|
spec?: SpecDriver<TSpec>;
|
|
15
10
|
signal?: AbortSignal;
|
|
16
11
|
logger: Logger;
|
|
17
12
|
};
|
|
18
|
-
export declare function makeCheck<TSpec extends SpecType>({ eyes,
|
|
13
|
+
export declare function makeCheck<TSpec extends SpecType>({ eyes, target: defaultTarget, renderers: defaultRenderers, spec, signal, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
19
14
|
settings?: CheckSettings<TSpec> | undefined;
|
|
20
15
|
target?: Target<TSpec> | undefined;
|
|
21
16
|
logger?: Logger | undefined;
|
|
22
|
-
}) => Promise<
|
|
17
|
+
}) => Promise<void>;
|
|
23
18
|
export {};
|
package/types/ufg/core.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Core } from './types';
|
|
2
|
-
import type { Core as BaseCore } from '@applitools/core-base';
|
|
3
2
|
import { type UFGClient } from '@applitools/ufg-client';
|
|
4
3
|
import { type NMLClient } from '@applitools/nml-client';
|
|
5
4
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
6
5
|
import { type Logger } from '@applitools/logger';
|
|
6
|
+
import { type Core as BaseCore } from '@applitools/core-base';
|
|
7
7
|
type Options<TSpec extends SpecType> = {
|
|
8
8
|
spec?: SpecDriver<TSpec>;
|
|
9
9
|
clients?: {
|
|
@@ -11,11 +11,11 @@ type Options<TSpec extends SpecType> = {
|
|
|
11
11
|
nml?: NMLClient;
|
|
12
12
|
};
|
|
13
13
|
base?: BaseCore;
|
|
14
|
-
agentId?: string;
|
|
15
14
|
concurrency?: number;
|
|
16
15
|
fetchConcurrency?: number;
|
|
16
|
+
agentId?: string;
|
|
17
17
|
cwd?: string;
|
|
18
18
|
logger?: Logger;
|
|
19
19
|
};
|
|
20
|
-
export declare function makeCore<TSpec extends SpecType>({
|
|
20
|
+
export declare function makeCore<TSpec extends SpecType>({ spec, clients, base, concurrency, fetchConcurrency, agentId, cwd, logger: defaultLogger, }: Options<TSpec>): Core<TSpec>;
|
|
21
21
|
export {};
|
|
@@ -8,12 +8,8 @@ type Options<TSpec extends SpecType> = {
|
|
|
8
8
|
base?: BaseEyes[];
|
|
9
9
|
logger: Logger;
|
|
10
10
|
};
|
|
11
|
-
export declare function makeGetBaseEyes<TSpec extends SpecType>({ settings: defaultSettings, eyes,
|
|
12
|
-
settings
|
|
11
|
+
export declare function makeGetBaseEyes<TSpec extends SpecType>({ settings: defaultSettings, eyes, logger: mainLogger, }: Options<TSpec>): ({ settings, logger, }: {
|
|
12
|
+
settings: GetBaseEyesSettings;
|
|
13
13
|
logger?: Logger | undefined;
|
|
14
|
-
}) => Promise<BaseEyes
|
|
15
|
-
getCachedValues(): Promise<BaseEyes[]>[];
|
|
16
|
-
setCachedValue(key: any, value: Promise<BaseEyes[]>): void;
|
|
17
|
-
clearCache(): void;
|
|
18
|
-
};
|
|
14
|
+
}) => Promise<BaseEyes>;
|
|
19
15
|
export {};
|
package/types/ufg/open-eyes.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type { DriverTarget, Core, Eyes, OpenSettings } from './types';
|
|
2
|
-
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
1
|
+
import type { DriverTarget, Core, Eyes, EyesStorage, OpenSettings } from './types';
|
|
3
2
|
import { type Logger } from '@applitools/logger';
|
|
4
3
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
5
4
|
type Options<TSpec extends SpecType> = {
|
|
@@ -7,10 +6,10 @@ type Options<TSpec extends SpecType> = {
|
|
|
7
6
|
spec?: SpecDriver<TSpec>;
|
|
8
7
|
logger: Logger;
|
|
9
8
|
};
|
|
10
|
-
export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: mainLogger }: Options<TSpec>): ({ target, settings,
|
|
9
|
+
export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: mainLogger }: Options<TSpec>): ({ target, settings, storage, logger, }: {
|
|
11
10
|
target?: DriverTarget<TSpec> | undefined;
|
|
12
11
|
settings: OpenSettings;
|
|
13
|
-
|
|
12
|
+
storage?: EyesStorage | undefined;
|
|
14
13
|
logger?: Logger | undefined;
|
|
15
14
|
}) => Promise<Eyes<TSpec>>;
|
|
16
15
|
export {};
|
package/types/ufg/types.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import type { MaybeArray } from '@applitools/utils';
|
|
2
|
-
import type * as BaseCore from '@applitools/core-base/types';
|
|
3
2
|
import type * as AutomationCore from '../automation/types';
|
|
4
3
|
import { type SpecType } from '@applitools/driver';
|
|
5
4
|
import { type Logger } from '@applitools/logger';
|
|
6
5
|
import { type Proxy } from '@applitools/req';
|
|
7
|
-
import { type UFGClient, type UFGClientSettings, type
|
|
6
|
+
import { type UFGClient, type UFGClientSettings, type DomSnapshot, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
|
|
8
7
|
export * from '../automation/types';
|
|
9
8
|
export type SnapshotTarget = MaybeArray<DomSnapshot> | MaybeArray<AndroidSnapshot> | MaybeArray<IOSSnapshot>;
|
|
10
9
|
export type Target<TSpec extends SpecType> = SnapshotTarget | AutomationCore.Target<TSpec>;
|
|
@@ -17,39 +16,25 @@ export interface Core<TSpec extends SpecType> extends AutomationCore.Core<TSpec>
|
|
|
17
16
|
openEyes(options: {
|
|
18
17
|
target?: AutomationCore.DriverTarget<TSpec>;
|
|
19
18
|
settings: AutomationCore.OpenSettings;
|
|
20
|
-
|
|
19
|
+
storage?: AutomationCore.EyesStorage;
|
|
21
20
|
logger?: Logger;
|
|
22
21
|
}): Promise<Eyes<TSpec>>;
|
|
23
22
|
}
|
|
24
23
|
export interface Eyes<TSpec extends SpecType> extends AutomationCore.Eyes<TSpec> {
|
|
25
24
|
readonly type: 'ufg';
|
|
26
25
|
readonly core: Core<TSpec>;
|
|
27
|
-
getBaseEyes(options?: {
|
|
28
|
-
settings?: GetBaseEyesSettings;
|
|
29
|
-
logger?: Logger;
|
|
30
|
-
}): Promise<BaseCore.Eyes[]>;
|
|
31
26
|
check(options?: {
|
|
32
27
|
target?: Target<TSpec>;
|
|
33
28
|
settings?: CheckSettings<TSpec>;
|
|
34
29
|
logger?: Logger;
|
|
35
|
-
}): Promise<
|
|
30
|
+
}): Promise<void>;
|
|
36
31
|
checkAndClose(options?: {
|
|
37
32
|
target?: Target<TSpec>;
|
|
38
33
|
settings?: CheckSettings<TSpec> & AutomationCore.CloseSettings;
|
|
39
34
|
logger?: Logger;
|
|
40
35
|
}): Promise<void>;
|
|
41
|
-
getResults(options?: {
|
|
42
|
-
settings?: AutomationCore.GetResultsSettings;
|
|
43
|
-
logger?: Logger;
|
|
44
|
-
}): Promise<TestResult[]>;
|
|
45
36
|
}
|
|
46
|
-
export type GetBaseEyesSettings = RenderEnvironmentSettings & {
|
|
47
|
-
properties?: BaseCore.CustomProperty[];
|
|
48
|
-
};
|
|
49
37
|
export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings<TSpec> & {
|
|
50
|
-
renderers?: (Renderer & {
|
|
51
|
-
properties?: BaseCore.CustomProperty[];
|
|
52
|
-
})[];
|
|
53
38
|
hooks?: {
|
|
54
39
|
beforeCaptureScreenshot: string;
|
|
55
40
|
};
|
|
@@ -65,9 +50,3 @@ export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings
|
|
|
65
50
|
};
|
|
66
51
|
headers?: Record<string, string>;
|
|
67
52
|
};
|
|
68
|
-
export type CheckResult = AutomationCore.CheckResult & {
|
|
69
|
-
readonly renderer: Renderer;
|
|
70
|
-
};
|
|
71
|
-
export type TestResult = AutomationCore.TestResult & {
|
|
72
|
-
readonly renderer: Renderer;
|
|
73
|
-
};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { Ref, ServerSocket, UniversalSpecDriver } from './types';
|
|
2
|
-
import type { SpecType as
|
|
2
|
+
import type { SpecType, SpecDriver as BaseSpecDriver, CommonSelector } from '@applitools/driver';
|
|
3
3
|
export type Driver = Ref;
|
|
4
4
|
export type Context = Ref;
|
|
5
5
|
export type Element = Ref;
|
|
6
6
|
export type Selector = string | CommonSelector | Ref;
|
|
7
|
-
export type
|
|
7
|
+
export type PrimarySpecType = SpecType<Driver, Context, Element, Selector>;
|
|
8
|
+
export type SpecDriver = BaseSpecDriver<PrimarySpecType>;
|
|
8
9
|
export declare function makeSpec({ socket, spec, }: {
|
|
9
|
-
socket: ServerSocket<
|
|
10
|
-
spec: (keyof UniversalSpecDriver<
|
|
11
|
-
}): SpecDriver
|
|
10
|
+
socket: ServerSocket<PrimarySpecType, any>;
|
|
11
|
+
spec: (keyof UniversalSpecDriver<PrimarySpecType>)[];
|
|
12
|
+
}): SpecDriver;
|
|
@@ -56,16 +56,6 @@ export interface UniversalSpecDriver<T extends SpecType> {
|
|
|
56
56
|
element1: T['element'];
|
|
57
57
|
element2: T['element'];
|
|
58
58
|
}): Promise<boolean>;
|
|
59
|
-
mainContext(options: {
|
|
60
|
-
context: T['context'];
|
|
61
|
-
}): Promise<T['context']>;
|
|
62
|
-
parentContext(options: {
|
|
63
|
-
context: T['context'];
|
|
64
|
-
}): Promise<T['context']>;
|
|
65
|
-
childContext(options: {
|
|
66
|
-
context: T['context'];
|
|
67
|
-
element: T['element'];
|
|
68
|
-
}): Promise<T['context']>;
|
|
69
59
|
executeScript(options: {
|
|
70
60
|
context: T['context'];
|
|
71
61
|
script: string;
|
|
@@ -87,6 +77,15 @@ export interface UniversalSpecDriver<T extends SpecType> {
|
|
|
87
77
|
parent?: T['element'];
|
|
88
78
|
options?: WaitOptions;
|
|
89
79
|
}): Promise<T['element'] | null>;
|
|
80
|
+
getElementRegion(options: {
|
|
81
|
+
context: T['context'];
|
|
82
|
+
element: T['element'];
|
|
83
|
+
}): Promise<Region>;
|
|
84
|
+
getElementAttribute(options: {
|
|
85
|
+
context: T['context'];
|
|
86
|
+
element: T['element'];
|
|
87
|
+
attr: string;
|
|
88
|
+
}): Promise<string>;
|
|
90
89
|
setElementText(options: {
|
|
91
90
|
context: T['context'];
|
|
92
91
|
element: T['element'];
|
|
@@ -96,6 +95,30 @@ export interface UniversalSpecDriver<T extends SpecType> {
|
|
|
96
95
|
context: T['context'];
|
|
97
96
|
element: T['element'];
|
|
98
97
|
}): Promise<string>;
|
|
98
|
+
hover(options: {
|
|
99
|
+
context: T['context'];
|
|
100
|
+
element: T['element'];
|
|
101
|
+
}): Promise<void>;
|
|
102
|
+
click(options: {
|
|
103
|
+
context: T['context'];
|
|
104
|
+
element: T['element'];
|
|
105
|
+
}): Promise<void>;
|
|
106
|
+
mainContext(options: {
|
|
107
|
+
context: T['context'];
|
|
108
|
+
}): Promise<T['context']>;
|
|
109
|
+
parentContext(options: {
|
|
110
|
+
context: T['context'];
|
|
111
|
+
}): Promise<T['context']>;
|
|
112
|
+
childContext(options: {
|
|
113
|
+
context: T['context'];
|
|
114
|
+
element: T['element'];
|
|
115
|
+
}): Promise<T['context']>;
|
|
116
|
+
getDriverInfo(options: {
|
|
117
|
+
driver: T['driver'];
|
|
118
|
+
}): Promise<DriverInfo>;
|
|
119
|
+
getCapabilities(options: {
|
|
120
|
+
driver: T['driver'];
|
|
121
|
+
}): Promise<Record<string, any>>;
|
|
99
122
|
setWindowSize(options: {
|
|
100
123
|
driver: T['driver'];
|
|
101
124
|
size: Size;
|
|
@@ -110,40 +133,6 @@ export interface UniversalSpecDriver<T extends SpecType> {
|
|
|
110
133
|
getViewportSize(options: {
|
|
111
134
|
driver: T['driver'];
|
|
112
135
|
}): Promise<Size>;
|
|
113
|
-
getCookies(options: {
|
|
114
|
-
driver: T['driver'] | T['context'];
|
|
115
|
-
context?: boolean;
|
|
116
|
-
}): Promise<Cookie[]>;
|
|
117
|
-
getDriverInfo(options: {
|
|
118
|
-
driver: T['driver'];
|
|
119
|
-
}): Promise<DriverInfo>;
|
|
120
|
-
getCapabilities(options: {
|
|
121
|
-
driver: T['driver'];
|
|
122
|
-
}): Promise<Record<string, any>>;
|
|
123
|
-
getTitle(options: {
|
|
124
|
-
driver: T['driver'];
|
|
125
|
-
}): Promise<string>;
|
|
126
|
-
getUrl(options: {
|
|
127
|
-
driver: T['driver'];
|
|
128
|
-
}): Promise<string>;
|
|
129
|
-
takeScreenshot(options: {
|
|
130
|
-
driver: T['driver'];
|
|
131
|
-
}): Promise<string>;
|
|
132
|
-
click(options: {
|
|
133
|
-
context: T['context'];
|
|
134
|
-
element: T['element'] | T['selector'];
|
|
135
|
-
}): Promise<void>;
|
|
136
|
-
visit(options: {
|
|
137
|
-
driver: T['driver'];
|
|
138
|
-
url: string;
|
|
139
|
-
}): Promise<void>;
|
|
140
|
-
getOrientation(options: {
|
|
141
|
-
driver: T['driver'];
|
|
142
|
-
}): Promise<'portrait' | 'landscape' | 'portrait-secondary' | 'landscape-secondary'>;
|
|
143
|
-
setOrientation(options: {
|
|
144
|
-
driver: T['driver'];
|
|
145
|
-
orientation: 'portrait' | 'landscape' | 'portrait-secondary' | 'landscape-secondary';
|
|
146
|
-
}): Promise<void>;
|
|
147
136
|
getSystemBars(options: {
|
|
148
137
|
driver: T['driver'];
|
|
149
138
|
}): Promise<{
|
|
@@ -162,19 +151,34 @@ export interface UniversalSpecDriver<T extends SpecType> {
|
|
|
162
151
|
width: number;
|
|
163
152
|
};
|
|
164
153
|
}>;
|
|
165
|
-
|
|
154
|
+
getOrientation(options: {
|
|
166
155
|
driver: T['driver'];
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
156
|
+
}): Promise<'portrait' | 'landscape' | 'portrait-secondary' | 'landscape-secondary'>;
|
|
157
|
+
setOrientation(options: {
|
|
158
|
+
driver: T['driver'];
|
|
159
|
+
orientation: 'portrait' | 'landscape' | 'portrait-secondary' | 'landscape-secondary';
|
|
160
|
+
}): Promise<void>;
|
|
161
|
+
getCookies(options: {
|
|
162
|
+
driver: T['driver'] | T['context'];
|
|
163
|
+
context?: boolean;
|
|
164
|
+
}): Promise<Cookie[]>;
|
|
165
|
+
getTitle(options: {
|
|
166
|
+
driver: T['driver'];
|
|
167
|
+
}): Promise<string>;
|
|
168
|
+
getUrl(options: {
|
|
169
|
+
driver: T['driver'];
|
|
170
|
+
}): Promise<string>;
|
|
171
|
+
takeScreenshot(options: {
|
|
170
172
|
driver: T['driver'];
|
|
171
|
-
element: T['element'];
|
|
172
|
-
attr: string;
|
|
173
173
|
}): Promise<string>;
|
|
174
174
|
performAction(options: {
|
|
175
175
|
driver: T['driver'];
|
|
176
176
|
steps: any[];
|
|
177
177
|
}): Promise<void>;
|
|
178
|
+
visit(options: {
|
|
179
|
+
driver: T['driver'];
|
|
180
|
+
url: string;
|
|
181
|
+
}): Promise<void>;
|
|
178
182
|
getCurrentWorld(options: {
|
|
179
183
|
driver: T['driver'];
|
|
180
184
|
}): Promise<string>;
|
package/dist/classic/abort.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeAbort = void 0;
|
|
4
|
-
const driver_1 = require("@applitools/driver");
|
|
5
|
-
function makeAbort({ eyes, target, spec, logger: mainLogger }) {
|
|
6
|
-
return async function abort({ settings, logger = mainLogger, } = {}) {
|
|
7
|
-
logger = logger.extend(mainLogger);
|
|
8
|
-
logger.log('Command "abort" is called with settings', settings);
|
|
9
|
-
settings !== null && settings !== void 0 ? settings : (settings = {});
|
|
10
|
-
if (!settings.testMetadata) {
|
|
11
|
-
try {
|
|
12
|
-
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
13
|
-
settings.testMetadata = await (driver === null || driver === void 0 ? void 0 : driver.getSessionMetadata());
|
|
14
|
-
}
|
|
15
|
-
catch (error) {
|
|
16
|
-
logger.warn('Command "abort" received an error during extracting driver metadata', error);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
const baseEyes = await eyes.getBaseEyes();
|
|
20
|
-
await Promise.all(baseEyes.map(baseEyes => baseEyes.abort({ settings, logger })));
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
exports.makeAbort = makeAbort;
|
package/dist/classic/close.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeClose = void 0;
|
|
4
|
-
const driver_1 = require("@applitools/driver");
|
|
5
|
-
function makeClose({ eyes, target, spec, logger: mainLogger }) {
|
|
6
|
-
return async function close({ settings, logger = mainLogger, } = {}) {
|
|
7
|
-
logger = logger.extend(mainLogger);
|
|
8
|
-
logger.log('Command "close" is called with settings', settings);
|
|
9
|
-
settings !== null && settings !== void 0 ? settings : (settings = {});
|
|
10
|
-
if (!settings.testMetadata) {
|
|
11
|
-
try {
|
|
12
|
-
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
13
|
-
settings.testMetadata = await (driver === null || driver === void 0 ? void 0 : driver.getSessionMetadata());
|
|
14
|
-
}
|
|
15
|
-
catch (error) {
|
|
16
|
-
logger.warn('Command "close" received an error during extracting driver metadata', error);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
const baseEyes = await eyes.getBaseEyes();
|
|
20
|
-
await Promise.all(baseEyes.map(baseEyes => baseEyes.close({ settings, logger })));
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
exports.makeClose = makeClose;
|