@thinkwise/testwise 0.1.66 → 0.1.75
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 +39 -39
- package/Testwise.ts +2 -3
- package/config.json +9 -9
- package/dist/Testwise.js +2 -4
- package/dist/Testwise.js.map +1 -1
- package/dist/Testwise.json +25 -0
- package/dist/helpers/LoginHelper.d.ts +2 -2
- package/dist/helpers/LoginHelper.js +3 -3
- package/dist/helpers/LoginHelper.js.map +1 -1
- package/dist/package-lock.json +2 -2
- package/dist/package.json +1 -1
- package/dist/page-extensions/GlobalComponents.d.ts +19 -0
- package/dist/page-extensions/GlobalComponents.js +21 -0
- package/dist/page-extensions/GlobalComponents.js.map +1 -0
- package/dist/page-extensions/LoginFeatures.d.ts +1 -1
- package/dist/page-extensions/LoginFeatures.js +2 -2
- package/dist/page-extensions/LoginFeatures.js.map +1 -1
- package/dist/page-extensions/index.d.ts +1 -0
- package/dist/page-extensions/index.js +1 -0
- package/dist/page-extensions/index.js.map +1 -1
- package/dist/seed-data/screen-schemas/chart.json +25 -0
- package/dist/seed-data/screen-schemas/chart_horizontal.json +25 -0
- package/dist/seed-data/screen-schemas/chart_no_fields.json +14 -0
- package/dist/seed-data/screen-schemas/cube.json +40 -0
- package/dist/seed-data/screen-schemas/cube_horizontal.json +40 -0
- package/dist/seed-data/screen-schemas/cube_no_fields.json +25 -0
- package/dist/seed-data/screen-schemas/form_only.json +20 -0
- package/dist/seed-data/screen-schemas/form_with_tree.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_card_list.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_filter_form.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_map.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_prefilter_bar.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_report_bar.json +20 -0
- package/dist/seed-data/screen-schemas/grid_with_report_tiles.json +20 -0
- package/dist/seed-data/screen-schemas/hierarchy.json +43 -0
- package/dist/seed-data/screen-schemas/hierarchy_card_list.json +39 -0
- package/dist/seed-data/screen-schemas/hierarchy_no_filter.json +38 -0
- package/dist/seed-data/screen-schemas/look_up_popup.json +48 -0
- package/dist/seed-data/screen-schemas/master_detail.json +39 -0
- package/dist/seed-data/screen-schemas/master_detail_no_filter.json +34 -0
- package/dist/seed-data/screen-schemas/master_detail_vertical.json +39 -0
- package/dist/seed-data/screen-schemas/master_detail_with_preview.json +25 -0
- package/dist/seed-data/screen-schemas/master_detail_with_task_bar.json +48 -0
- package/dist/seed-data/screen-schemas/master_detail_with_task_tiles.json +44 -0
- package/dist/seed-data/screen-schemas/master_vertical_detail.json +39 -0
- package/dist/seed-data/screen-schemas/pivot_grid.json +25 -0
- package/dist/seed-data/screen-schemas/pivot_grid_horizontal.json +25 -0
- package/dist/seed-data/screen-schemas/pivot_grid_no_fields.json +14 -0
- package/dist/seed-data/screen-schemas/scheduler.json +14 -0
- package/dist/seed-data/screen-schemas/test.json +30 -0
- package/dist/seed-data/screen-schemas/testpoonam.json +40 -0
- package/dist/seed-data/screen-schemas/view_customer_cube.json +36 -0
- package/dist/seed-data/subjects.json +1586 -0
- package/helpers/LoginHelper.ts +3 -3
- package/package.json +58 -58
- package/page-extensions/GlobalComponents.ts +37 -0
- package/page-extensions/LoginFeatures.ts +3 -3
- package/page-extensions/index.ts +1 -0
- package/scripts/Testwise.template.json +24 -24
- package/scripts/main.js +11 -11
- package/scripts/tsconfig.template.json +11 -11
- package/tsconfig.json +19 -19
package/README.md
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
# Introduction to Testwise
|
|
2
|
-
|
|
3
|
-
## What Testwise does
|
|
4
|
-
|
|
5
|
-
Testwise is a dedicated end-to-end (E2E) test automation solution built for applications developed on the Thinkwise Platform. It sits on top of Playwright and provides a higher-level automation layer that deeply understands the UI patterns, controls, and workflows typical in Thinkwise applications.
|
|
6
|
-
|
|
7
|
-
**With Testwise you get:**
|
|
8
|
-
|
|
9
|
-
- Prebuilt page extensions and custom controls tailored to the Thinkwise UI (grids, forms, actionbars, lookup dropdowns, etc).
|
|
10
|
-
|
|
11
|
-
- Scripts and helpers for common tasks such as authentication and user simulation, cutting down on boilerplate setup.
|
|
12
|
-
|
|
13
|
-
In short: Testwise transforms common Thinkwise application interactions into clear, reusable methods, so your development and QA teams can focus on validating business logic, not reinventing automation plumbing.
|
|
14
|
-
|
|
15
|
-
## Why Testwise is useful
|
|
16
|
-
|
|
17
|
-
Applications built on the Thinkwise Platform tend to be long-lived, complex, and subject to continuous evolution. Manual regression testing becomes costly and error-prone; unit and integration tests alone do not suffice to verify the full user experience end-to-end. Testwise addresses these challenges by:
|
|
18
|
-
|
|
19
|
-
- Ensuring consistent, repeatable checks of your complete application flows — from login through deep business scenarios.
|
|
20
|
-
|
|
21
|
-
- Reducing reliance on manual regression efforts so testers can shift focus to new features and strategic risk areas.
|
|
22
|
-
|
|
23
|
-
- Accelerating test development thanks to built-in, ready-to-use functions and helpers — rather than building your own automation foundation from scratch.
|
|
24
|
-
|
|
25
|
-
- Offloading UI-control maintenance: since Thinkwise maintains the component logic under the hood, your automation is more resilient to changes in underlying UI/control implementations.
|
|
26
|
-
|
|
27
|
-
## How to start with Testwise
|
|
28
|
-
|
|
29
|
-
To get started with Testwise, you will set up a test project using Node.js, Playwright, and the Testwise library. The full step-by-step installation and configuration guide — including prerequisites, project initialization, Testwise setup, Playwright integration and recording your first test— is documented in the official Thinkwise End-to-End Testing documentation.
|
|
30
|
-
|
|
31
|
-
You can find the complete instructions here:
|
|
32
|
-
|
|
33
|
-
[Thinkwise Documentation - End-to-end Tests](https://docs.thinkwisesoftware.com/docs/sf/end_to_end_tests)
|
|
34
|
-
|
|
35
|
-
## Where to get help with Testwise
|
|
36
|
-
|
|
37
|
-
- Check issues, discussions or Q&A on the [Thinkwise community](https://community.thinkwisesoftware.com/).
|
|
38
|
-
|
|
39
|
-
- Raise internal tickets or contact the Thinkwise support/automation team for assistance or bug reports.
|
|
1
|
+
# Introduction to Testwise
|
|
2
|
+
|
|
3
|
+
## What Testwise does
|
|
4
|
+
|
|
5
|
+
Testwise is a dedicated end-to-end (E2E) test automation solution built for applications developed on the Thinkwise Platform. It sits on top of Playwright and provides a higher-level automation layer that deeply understands the UI patterns, controls, and workflows typical in Thinkwise applications.
|
|
6
|
+
|
|
7
|
+
**With Testwise you get:**
|
|
8
|
+
|
|
9
|
+
- Prebuilt page extensions and custom controls tailored to the Thinkwise UI (grids, forms, actionbars, lookup dropdowns, etc).
|
|
10
|
+
|
|
11
|
+
- Scripts and helpers for common tasks such as authentication and user simulation, cutting down on boilerplate setup.
|
|
12
|
+
|
|
13
|
+
In short: Testwise transforms common Thinkwise application interactions into clear, reusable methods, so your development and QA teams can focus on validating business logic, not reinventing automation plumbing.
|
|
14
|
+
|
|
15
|
+
## Why Testwise is useful
|
|
16
|
+
|
|
17
|
+
Applications built on the Thinkwise Platform tend to be long-lived, complex, and subject to continuous evolution. Manual regression testing becomes costly and error-prone; unit and integration tests alone do not suffice to verify the full user experience end-to-end. Testwise addresses these challenges by:
|
|
18
|
+
|
|
19
|
+
- Ensuring consistent, repeatable checks of your complete application flows — from login through deep business scenarios.
|
|
20
|
+
|
|
21
|
+
- Reducing reliance on manual regression efforts so testers can shift focus to new features and strategic risk areas.
|
|
22
|
+
|
|
23
|
+
- Accelerating test development thanks to built-in, ready-to-use functions and helpers — rather than building your own automation foundation from scratch.
|
|
24
|
+
|
|
25
|
+
- Offloading UI-control maintenance: since Thinkwise maintains the component logic under the hood, your automation is more resilient to changes in underlying UI/control implementations.
|
|
26
|
+
|
|
27
|
+
## How to start with Testwise
|
|
28
|
+
|
|
29
|
+
To get started with Testwise, you will set up a test project using Node.js, Playwright, and the Testwise library. The full step-by-step installation and configuration guide — including prerequisites, project initialization, Testwise setup, Playwright integration and recording your first test— is documented in the official Thinkwise End-to-End Testing documentation.
|
|
30
|
+
|
|
31
|
+
You can find the complete instructions here:
|
|
32
|
+
|
|
33
|
+
[Thinkwise Documentation - End-to-end Tests](https://docs.thinkwisesoftware.com/docs/sf/end_to_end_tests)
|
|
34
|
+
|
|
35
|
+
## Where to get help with Testwise
|
|
36
|
+
|
|
37
|
+
- Check issues, discussions or Q&A on the [Thinkwise community](https://community.thinkwisesoftware.com/).
|
|
38
|
+
|
|
39
|
+
- Raise internal tickets or contact the Thinkwise support/automation team for assistance or bug reports.
|
package/Testwise.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { test as base } from '@playwright/test';
|
|
2
|
-
import { GoToDeepLink } from './page-extensions/
|
|
3
|
-
import { LoginFeatures } from './page-extensions/LoginFeatures.js';
|
|
4
|
-
import { UserSimulation } from './page-extensions/UserSimulation.js';
|
|
2
|
+
import { Components, GoToDeepLink, LoginFeatures, UserSimulation } from './page-extensions/index.js';
|
|
5
3
|
import { WaitEventHandler } from './page-extensions/WaitEventHandler.js';
|
|
6
4
|
import { ClickOverride } from './page-overrides/ClickOverride.js';
|
|
7
5
|
import { FillOverride } from './page-overrides/FillOverride.js';
|
|
@@ -19,6 +17,7 @@ export const test: Test = combineExtensions(
|
|
|
19
17
|
FillOverride,
|
|
20
18
|
|
|
21
19
|
// Extend section
|
|
20
|
+
Components,
|
|
22
21
|
GoToDeepLink,
|
|
23
22
|
LoginFeatures,
|
|
24
23
|
UserSimulation,
|
package/config.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
{
|
|
2
|
-
"defaultApplication": "",
|
|
3
|
-
"defaultPlatform": 3,
|
|
4
|
-
"loginOptionsDisabled": false,
|
|
5
|
-
"loginOptionsHidden": false,
|
|
6
|
-
"installNotificationDisabled": true,
|
|
7
|
-
"installNotificationExpirationInDays": 30,
|
|
8
|
-
"useServiceWorker": false,
|
|
9
|
-
"useFormFieldBackgroundColor": true
|
|
1
|
+
{
|
|
2
|
+
"defaultApplication": "",
|
|
3
|
+
"defaultPlatform": 3,
|
|
4
|
+
"loginOptionsDisabled": false,
|
|
5
|
+
"loginOptionsHidden": false,
|
|
6
|
+
"installNotificationDisabled": true,
|
|
7
|
+
"installNotificationExpirationInDays": 30,
|
|
8
|
+
"useServiceWorker": false,
|
|
9
|
+
"useFormFieldBackgroundColor": true
|
|
10
10
|
}
|
package/dist/Testwise.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { test as base } from '@playwright/test';
|
|
2
|
-
import { GoToDeepLink } from './page-extensions/
|
|
3
|
-
import { LoginFeatures } from './page-extensions/LoginFeatures.js';
|
|
4
|
-
import { UserSimulation } from './page-extensions/UserSimulation.js';
|
|
2
|
+
import { Components, GoToDeepLink, LoginFeatures, UserSimulation } from './page-extensions/index.js';
|
|
5
3
|
import { WaitEventHandler } from './page-extensions/WaitEventHandler.js';
|
|
6
4
|
import { ClickOverride } from './page-overrides/ClickOverride.js';
|
|
7
5
|
import { FillOverride } from './page-overrides/FillOverride.js';
|
|
@@ -12,5 +10,5 @@ export const test = combineExtensions(base,
|
|
|
12
10
|
// Override section
|
|
13
11
|
ClickOverride, FillOverride,
|
|
14
12
|
// Extend section
|
|
15
|
-
GoToDeepLink, LoginFeatures, UserSimulation, WaitEventHandler);
|
|
13
|
+
Components, GoToDeepLink, LoginFeatures, UserSimulation, WaitEventHandler);
|
|
16
14
|
//# sourceMappingURL=Testwise.js.map
|
package/dist/Testwise.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Testwise.js","sourceRoot":"","sources":["../Testwise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Testwise.js","sourceRoot":"","sources":["../Testwise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAGhE,SAAS,iBAAiB,CAAC,QAAc,EAAE,GAAG,UAAkD;IAC9F,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAS,iBAAiB,CACzC,IAAI;AAEJ,mBAAmB;AACnB,aAAa,EACb,YAAY;AAEZ,iBAAiB;AACjB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,CACjB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"environmentSettings": {
|
|
3
|
+
"baseUrl": "https://develop.thinkwise.app",
|
|
4
|
+
"serviceUrl": "https://web10.thinkwise.app/qa_indicium",
|
|
5
|
+
"metaEndpoint": "iam"
|
|
6
|
+
},
|
|
7
|
+
"featureSettings": {
|
|
8
|
+
"logger": {
|
|
9
|
+
"logDir": "logs",
|
|
10
|
+
"logLevel": "info",
|
|
11
|
+
"applyLogLevelToConsoleOutput": false,
|
|
12
|
+
"logByDay": true,
|
|
13
|
+
"bufferSizeLimit": -1
|
|
14
|
+
},
|
|
15
|
+
"InflightRequests": {
|
|
16
|
+
"waitForRequestsToComplete": true,
|
|
17
|
+
"waitTimeout": 5000,
|
|
18
|
+
"continueOnError": true,
|
|
19
|
+
"paths": ["/stage", "/layout()", "/context()"]
|
|
20
|
+
},
|
|
21
|
+
"other": {
|
|
22
|
+
"loginTimeout": 30000
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -7,9 +7,9 @@ export declare class LoginHelper {
|
|
|
7
7
|
constructor(page: Page);
|
|
8
8
|
/**
|
|
9
9
|
* Log in and go to a specified application
|
|
10
|
-
* @param
|
|
10
|
+
* @param applicationId - Application name to launch
|
|
11
11
|
*/
|
|
12
|
-
logIn(
|
|
12
|
+
logIn(applicationId?: string): Promise<void>;
|
|
13
13
|
/**
|
|
14
14
|
* Log in with credentials
|
|
15
15
|
* @param username - The username to log in with
|
|
@@ -17,12 +17,12 @@ export class LoginHelper {
|
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
19
|
* Log in and go to a specified application
|
|
20
|
-
* @param
|
|
20
|
+
* @param applicationId - Application name to launch
|
|
21
21
|
*/
|
|
22
|
-
async logIn(
|
|
22
|
+
async logIn(applicationId) {
|
|
23
23
|
await this.logInAndConfigureApplication({
|
|
24
24
|
config: {
|
|
25
|
-
defaultApplication:
|
|
25
|
+
defaultApplication: applicationId ?? configFixture.defaultApplication
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginHelper.js","sourceRoot":"","sources":["../../helpers/LoginHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAErG,MAAM,OAAO,WAAW;IAKtB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC,GAAG,CAAS,gCAAgC,CAAC,CAAC;QAClF,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC,GAAG,CAAS,kCAAkC,CAAC,CAAC;QAEtF,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY;YAC9B,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;QAEJ,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"LoginHelper.js","sourceRoot":"","sources":["../../helpers/LoginHelper.ts"],"names":[],"mappings":"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"}
|
package/dist/package-lock.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thinkwise/testwise",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.74",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@thinkwise/testwise",
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.74",
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@types/node": "^22.15.29",
|
package/dist/package.json
CHANGED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Page } from '@playwright/test';
|
|
2
|
+
import { ExportComponent, PopUpComponent } from '../components/index.js';
|
|
3
|
+
import type { Test } from '../types/CoreTypes.js';
|
|
4
|
+
declare class GlobalComponents {
|
|
5
|
+
popUp: PopUpComponent;
|
|
6
|
+
export: ExportComponent;
|
|
7
|
+
constructor(page: Page);
|
|
8
|
+
}
|
|
9
|
+
declare module '@playwright/test' {
|
|
10
|
+
interface Page {
|
|
11
|
+
components: GlobalComponents;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export declare class Components {
|
|
15
|
+
private _test;
|
|
16
|
+
constructor(test: Test);
|
|
17
|
+
get test(): Test;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ExportComponent, PopUpComponent } from '../components/index.js';
|
|
2
|
+
class GlobalComponents {
|
|
3
|
+
constructor(page) {
|
|
4
|
+
this.popUp = new PopUpComponent(page);
|
|
5
|
+
this.export = new ExportComponent(page);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
export class Components {
|
|
9
|
+
constructor(test) {
|
|
10
|
+
this._test = test.extend({
|
|
11
|
+
page: async ({ page }, use) => {
|
|
12
|
+
page.components = new GlobalComponents(page);
|
|
13
|
+
await use(page);
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
get test() {
|
|
18
|
+
return this._test;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=GlobalComponents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobalComponents.js","sourceRoot":"","sources":["../../page-extensions/GlobalComponents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGzE,MAAM,gBAAgB;IAIpB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF;AAQD,MAAM,OAAO,UAAU;IAGrB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAE7C,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -2,7 +2,7 @@ import type { Test } from '../types/CoreTypes.js';
|
|
|
2
2
|
import type { UniversalLoginOptions } from '../types/index.js';
|
|
3
3
|
declare module '@playwright/test' {
|
|
4
4
|
interface Page {
|
|
5
|
-
logIn(): Promise<void>;
|
|
5
|
+
logIn(applicationId?: string): Promise<void>;
|
|
6
6
|
logInWithCredentials(username: string, password: string): Promise<void>;
|
|
7
7
|
logInWithOptions(options: UniversalLoginOptions): Promise<void>;
|
|
8
8
|
logOut(): Promise<void>;
|
|
@@ -4,8 +4,8 @@ export class LoginFeatures {
|
|
|
4
4
|
this._test = test.extend({
|
|
5
5
|
page: async ({ page }, use) => {
|
|
6
6
|
this._loginHelper = new LoginHelper(page);
|
|
7
|
-
page.logIn = async () => {
|
|
8
|
-
await this.loginHelper.logIn();
|
|
7
|
+
page.logIn = async (applicationId) => {
|
|
8
|
+
await this.loginHelper.logIn(applicationId);
|
|
9
9
|
};
|
|
10
10
|
page.logInWithCredentials = async (username, password) => {
|
|
11
11
|
await this.loginHelper.logInWithCredentials(username, password);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginFeatures.js","sourceRoot":"","sources":["../../page-extensions/LoginFeatures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAaxD,MAAM,OAAO,aAAa;IAIxB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;gBAE1C,IAAI,CAAC,KAAK,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"LoginFeatures.js","sourceRoot":"","sources":["../../page-extensions/LoginFeatures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAaxD,MAAM,OAAO,aAAa;IAIxB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;gBAE1C,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,aAAsB,EAAE,EAAE;oBAC5C,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC9C,CAAC,CAAC;gBAEF,IAAI,CAAC,oBAAoB,GAAG,KAAK,EAAE,QAAgB,EAAE,QAAgB,EAAE,EAAE;oBACvE,MAAM,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAClE,CAAC,CAAC;gBAEF,IAAI,CAAC,gBAAgB,GAAG,KAAK,EAAE,OAA8B,EAAE,EAAE;oBAC/D,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACnD,CAAC,CAAC;gBAEF,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE;oBACvB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBAClC,CAAC,CAAC;gBAEF,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAY,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../page-extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../page-extensions/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_chart",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" },
|
|
6
|
+
"PivotGridFieldList1": { "$ref": "#/definitions/PivotGridFieldList" },
|
|
7
|
+
"Splitter_DB1D3C31": { "$ref": "#/definitions/Splitter" },
|
|
8
|
+
"Splitter1": { "$ref": "#/definitions/Splitter" },
|
|
9
|
+
"Toolbar_BB2502FC": { "$ref": "#/definitions/Actionbar" }
|
|
10
|
+
},
|
|
11
|
+
"required": [
|
|
12
|
+
"Chart1",
|
|
13
|
+
"PivotGridFieldList1",
|
|
14
|
+
"Splitter_DB1D3C31",
|
|
15
|
+
"Splitter1",
|
|
16
|
+
"Toolbar_BB2502FC"
|
|
17
|
+
],
|
|
18
|
+
"additionalProperties": false,
|
|
19
|
+
"definitions": {
|
|
20
|
+
"Actionbar": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
21
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
22
|
+
"PivotGridFieldList": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
23
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_chart_horizontal",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" },
|
|
6
|
+
"PivotGridFieldList1": { "$ref": "#/definitions/PivotGridFieldList" },
|
|
7
|
+
"Splitter_A5007C3F": { "$ref": "#/definitions/Splitter" },
|
|
8
|
+
"Splitter2": { "$ref": "#/definitions/Splitter" },
|
|
9
|
+
"Toolbar_907134B1": { "$ref": "#/definitions/Actionbar" }
|
|
10
|
+
},
|
|
11
|
+
"required": [
|
|
12
|
+
"Chart1",
|
|
13
|
+
"PivotGridFieldList1",
|
|
14
|
+
"Splitter_A5007C3F",
|
|
15
|
+
"Splitter2",
|
|
16
|
+
"Toolbar_907134B1"
|
|
17
|
+
],
|
|
18
|
+
"additionalProperties": false,
|
|
19
|
+
"definitions": {
|
|
20
|
+
"Actionbar": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
21
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
22
|
+
"PivotGridFieldList": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
23
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_chart_no_fields",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" }
|
|
6
|
+
},
|
|
7
|
+
"required": [
|
|
8
|
+
"Chart1"
|
|
9
|
+
],
|
|
10
|
+
"additionalProperties": false,
|
|
11
|
+
"definitions": {
|
|
12
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_cube",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" },
|
|
6
|
+
"PivotGrid1": { "$ref": "#/definitions/PivotGrid" },
|
|
7
|
+
"PivotGridFieldList1": { "$ref": "#/definitions/PivotGridFieldList" },
|
|
8
|
+
"Splitter_886BCD13": { "$ref": "#/definitions/Splitter" },
|
|
9
|
+
"Splitter_E71D598C": { "$ref": "#/definitions/Splitter" },
|
|
10
|
+
"Splitter1": { "$ref": "#/definitions/Splitter" },
|
|
11
|
+
"Tabbed1": { "$ref": "#/definitions/Tab" },
|
|
12
|
+
"Tabbed1Tabpage1": { "$ref": "#/definitions/ComponentTab" },
|
|
13
|
+
"Tabbed1Tabpage2": { "$ref": "#/definitions/ComponentTab" },
|
|
14
|
+
"Toolbar_503DB1BD": { "$ref": "#/definitions/Actionbar" },
|
|
15
|
+
"Toolbar_BE6BDF12": { "$ref": "#/definitions/Actionbar" }
|
|
16
|
+
},
|
|
17
|
+
"required": [
|
|
18
|
+
"Chart1",
|
|
19
|
+
"PivotGrid1",
|
|
20
|
+
"PivotGridFieldList1",
|
|
21
|
+
"Splitter_886BCD13",
|
|
22
|
+
"Splitter_E71D598C",
|
|
23
|
+
"Splitter1",
|
|
24
|
+
"Tabbed1",
|
|
25
|
+
"Tabbed1Tabpage1",
|
|
26
|
+
"Tabbed1Tabpage2",
|
|
27
|
+
"Toolbar_503DB1BD",
|
|
28
|
+
"Toolbar_BE6BDF12"
|
|
29
|
+
],
|
|
30
|
+
"additionalProperties": false,
|
|
31
|
+
"definitions": {
|
|
32
|
+
"Actionbar": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
33
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
34
|
+
"ComponentTab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
35
|
+
"PivotGrid": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
36
|
+
"PivotGridFieldList": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
37
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
38
|
+
"Tab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_cube_horizontal",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" },
|
|
6
|
+
"PivotGrid1": { "$ref": "#/definitions/PivotGrid" },
|
|
7
|
+
"PivotGridFieldList1": { "$ref": "#/definitions/PivotGridFieldList" },
|
|
8
|
+
"Splitter_78515F00": { "$ref": "#/definitions/Splitter" },
|
|
9
|
+
"Splitter_A6E7DBE5": { "$ref": "#/definitions/Splitter" },
|
|
10
|
+
"Splitter5": { "$ref": "#/definitions/Splitter" },
|
|
11
|
+
"Tabbed1": { "$ref": "#/definitions/Tab" },
|
|
12
|
+
"Tabbed1Tabpage1": { "$ref": "#/definitions/ComponentTab" },
|
|
13
|
+
"Tabbed1Tabpage2": { "$ref": "#/definitions/ComponentTab" },
|
|
14
|
+
"Toolbar_96F2195F": { "$ref": "#/definitions/Actionbar" },
|
|
15
|
+
"Toolbar_CF139710": { "$ref": "#/definitions/Actionbar" }
|
|
16
|
+
},
|
|
17
|
+
"required": [
|
|
18
|
+
"Chart1",
|
|
19
|
+
"PivotGrid1",
|
|
20
|
+
"PivotGridFieldList1",
|
|
21
|
+
"Splitter_78515F00",
|
|
22
|
+
"Splitter_A6E7DBE5",
|
|
23
|
+
"Splitter5",
|
|
24
|
+
"Tabbed1",
|
|
25
|
+
"Tabbed1Tabpage1",
|
|
26
|
+
"Tabbed1Tabpage2",
|
|
27
|
+
"Toolbar_96F2195F",
|
|
28
|
+
"Toolbar_CF139710"
|
|
29
|
+
],
|
|
30
|
+
"additionalProperties": false,
|
|
31
|
+
"definitions": {
|
|
32
|
+
"Actionbar": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
33
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
34
|
+
"ComponentTab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
35
|
+
"PivotGrid": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
36
|
+
"PivotGridFieldList": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
37
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
38
|
+
"Tab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_cube_no_fields",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Chart1": { "$ref": "#/definitions/Chart" },
|
|
6
|
+
"PivotGrid1": { "$ref": "#/definitions/PivotGrid" },
|
|
7
|
+
"Tabbed1": { "$ref": "#/definitions/Tab" },
|
|
8
|
+
"Tabbed1Tabpage1": { "$ref": "#/definitions/ComponentTab" },
|
|
9
|
+
"Tabbed1Tabpage2": { "$ref": "#/definitions/ComponentTab" }
|
|
10
|
+
},
|
|
11
|
+
"required": [
|
|
12
|
+
"Chart1",
|
|
13
|
+
"PivotGrid1",
|
|
14
|
+
"Tabbed1",
|
|
15
|
+
"Tabbed1Tabpage1",
|
|
16
|
+
"Tabbed1Tabpage2"
|
|
17
|
+
],
|
|
18
|
+
"additionalProperties": false,
|
|
19
|
+
"definitions": {
|
|
20
|
+
"Chart": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
21
|
+
"ComponentTab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
22
|
+
"PivotGrid": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
23
|
+
"Tab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_form_only",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Form2": { "$ref": "#/definitions/Form" },
|
|
6
|
+
"Tabbed1": { "$ref": "#/definitions/Tab" },
|
|
7
|
+
"Tabbed1Tabpage1": { "$ref": "#/definitions/ComponentTab" }
|
|
8
|
+
},
|
|
9
|
+
"required": [
|
|
10
|
+
"Form2",
|
|
11
|
+
"Tabbed1",
|
|
12
|
+
"Tabbed1Tabpage1"
|
|
13
|
+
],
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"definitions": {
|
|
16
|
+
"ComponentTab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
17
|
+
"Form": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
18
|
+
"Tab": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_form_with_tree",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Form1": { "$ref": "#/definitions/Form" },
|
|
6
|
+
"Splitter1": { "$ref": "#/definitions/Splitter" },
|
|
7
|
+
"Tree1": { "$ref": "#/definitions/TreeView" }
|
|
8
|
+
},
|
|
9
|
+
"required": [
|
|
10
|
+
"Form1",
|
|
11
|
+
"Splitter1",
|
|
12
|
+
"Tree1"
|
|
13
|
+
],
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"definitions": {
|
|
16
|
+
"Form": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
17
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
18
|
+
"TreeView": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_grid_with_card_list",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Cardlist2": { "$ref": "#/definitions/Cardlist" },
|
|
6
|
+
"Grid1": { "$ref": "#/definitions/Grid" },
|
|
7
|
+
"Splitter10": { "$ref": "#/definitions/Splitter" }
|
|
8
|
+
},
|
|
9
|
+
"required": [
|
|
10
|
+
"Cardlist2",
|
|
11
|
+
"Grid1",
|
|
12
|
+
"Splitter10"
|
|
13
|
+
],
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"definitions": {
|
|
16
|
+
"Cardlist": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
17
|
+
"Grid": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
18
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "I_grid_with_filter_form",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"Filter1": { "$ref": "#/definitions/FilterForm" },
|
|
6
|
+
"Grid1": { "$ref": "#/definitions/Grid" },
|
|
7
|
+
"Splitter8": { "$ref": "#/definitions/Splitter" }
|
|
8
|
+
},
|
|
9
|
+
"required": [
|
|
10
|
+
"Filter1",
|
|
11
|
+
"Grid1",
|
|
12
|
+
"Splitter8"
|
|
13
|
+
],
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"definitions": {
|
|
16
|
+
"FilterForm": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
17
|
+
"Grid": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false },
|
|
18
|
+
"Splitter": { "type": "object", "properties": { "temp": { "type": "string" } }, "required": ["temp"], "additionalProperties": false }
|
|
19
|
+
}
|
|
20
|
+
}
|