@o3r/testing 12.5.0-prerelease.6 → 12.5.0-prerelease.60
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/core/angular/angular-materials/autocomplete-material.js +9 -20
- package/core/angular/angular-materials/autocomplete-material.js.map +1 -1
- package/core/angular/angular-materials/index.js +1 -1
- package/core/angular/angular-materials/select-material.js +42 -91
- package/core/angular/angular-materials/select-material.js.map +1 -1
- package/core/angular/angular-materials/slider-material.js +8 -11
- package/core/angular/angular-materials/slider-material.js.map +1 -1
- package/core/angular/component-fixture.js +68 -148
- package/core/angular/component-fixture.js.map +1 -1
- package/core/angular/element.js +44 -50
- package/core/angular/element.js.map +1 -1
- package/core/angular/elements/checkbox-element.js +12 -16
- package/core/angular/elements/checkbox-element.js.map +1 -1
- package/core/angular/elements/index.js +1 -1
- package/core/angular/elements/radio-element.js +12 -16
- package/core/angular/elements/radio-element.js.map +1 -1
- package/core/angular/elements/select-element.js +28 -49
- package/core/angular/elements/select-element.js.map +1 -1
- package/core/angular/elements/slider-element.js +38 -42
- package/core/angular/elements/slider-element.js.map +1 -1
- package/core/angular/group.js +9 -14
- package/core/angular/group.js.map +1 -1
- package/core/angular/groups/index.js +1 -1
- package/core/angular/groups/radio-group.js +25 -62
- package/core/angular/groups/radio-group.js.map +1 -1
- package/core/angular/index.js +1 -1
- package/core/angular/page-fixture.js +8 -11
- package/core/angular/page-fixture.js.map +1 -1
- package/core/angular-materials/autocomplete-material.js +8 -11
- package/core/angular-materials/autocomplete-material.js.map +1 -1
- package/core/angular-materials/index.js +1 -1
- package/core/angular-materials/select-material.js +12 -15
- package/core/angular-materials/select-material.js.map +1 -1
- package/core/angular-materials/slider-material.js +5 -8
- package/core/angular-materials/slider-material.js.map +1 -1
- package/core/component-fixture.js +28 -33
- package/core/component-fixture.js.map +1 -1
- package/core/element.js +24 -26
- package/core/element.js.map +1 -1
- package/core/elements/checkbox-element.js +12 -16
- package/core/elements/checkbox-element.js.map +1 -1
- package/core/elements/index.js +1 -1
- package/core/elements/radio-element.js +12 -16
- package/core/elements/radio-element.js.map +1 -1
- package/core/elements/select-element.js +10 -13
- package/core/elements/select-element.js.map +1 -1
- package/core/elements/slider-element.js +5 -8
- package/core/elements/slider-element.js.map +1 -1
- package/core/group.js +9 -15
- package/core/group.js.map +1 -1
- package/core/groups/index.js +1 -1
- package/core/groups/radio-group.js +8 -11
- package/core/groups/radio-group.js.map +1 -1
- package/core/helpers.js +11 -16
- package/core/helpers.js.map +1 -1
- package/core/index.js +1 -1
- package/core/page-fixture.js +8 -11
- package/core/page-fixture.js.map +1 -1
- package/core/playwright/angular-materials/autocomplete-material.js +26 -56
- package/core/playwright/angular-materials/autocomplete-material.js.map +1 -1
- package/core/playwright/angular-materials/index.js +1 -1
- package/core/playwright/angular-materials/select-material.js +48 -110
- package/core/playwright/angular-materials/select-material.js.map +1 -1
- package/core/playwright/angular-materials/slider-material.js +7 -10
- package/core/playwright/angular-materials/slider-material.js.map +1 -1
- package/core/playwright/component-fixture.js +88 -173
- package/core/playwright/component-fixture.js.map +1 -1
- package/core/playwright/element.js +38 -90
- package/core/playwright/element.js.map +1 -1
- package/core/playwright/elements/checkbox-element.js +49 -94
- package/core/playwright/elements/checkbox-element.js.map +1 -1
- package/core/playwright/elements/index.js +1 -1
- package/core/playwright/elements/radio-element.js +18 -34
- package/core/playwright/elements/radio-element.js.map +1 -1
- package/core/playwright/elements/select-element.js +14 -21
- package/core/playwright/elements/select-element.js.map +1 -1
- package/core/playwright/elements/slider-element.js +78 -157
- package/core/playwright/elements/slider-element.js.map +1 -1
- package/core/playwright/group.js +9 -14
- package/core/playwright/group.js.map +1 -1
- package/core/playwright/groups/index.js +1 -1
- package/core/playwright/groups/radio-group.js +27 -64
- package/core/playwright/groups/radio-group.js.map +1 -1
- package/core/playwright/index.js +1 -1
- package/core/playwright/page-fixture.js +8 -18
- package/core/playwright/page-fixture.js.map +1 -1
- package/core/protractor/angular-materials/autocomplete-material.js +12 -26
- package/core/protractor/angular-materials/autocomplete-material.js.map +1 -1
- package/core/protractor/angular-materials/index.js +1 -1
- package/core/protractor/angular-materials/select-material.js +45 -97
- package/core/protractor/angular-materials/select-material.js.map +1 -1
- package/core/protractor/component-fixture.js +89 -200
- package/core/protractor/component-fixture.js.map +1 -1
- package/core/protractor/element.js +46 -118
- package/core/protractor/element.js.map +1 -1
- package/core/protractor/elements/checkbox-element.js +18 -40
- package/core/protractor/elements/checkbox-element.js.map +1 -1
- package/core/protractor/elements/index.js +1 -1
- package/core/protractor/elements/radio-element.js +20 -42
- package/core/protractor/elements/radio-element.js.map +1 -1
- package/core/protractor/elements/select-element.js +16 -37
- package/core/protractor/elements/select-element.js.map +1 -1
- package/core/protractor/group.js +9 -14
- package/core/protractor/group.js.map +1 -1
- package/core/protractor/groups/index.js +1 -1
- package/core/protractor/groups/radio-group.js +29 -66
- package/core/protractor/groups/radio-group.js.map +1 -1
- package/core/protractor/index.js +1 -1
- package/core/protractor/page-fixture.js +9 -12
- package/core/protractor/page-fixture.js.map +1 -1
- package/core/protractor/utils.js +1 -1
- package/core/protractor/utils.js.map +1 -1
- package/errors/fixture-usage-error.js +5 -10
- package/errors/fixture-usage-error.js.map +1 -1
- package/errors/index.js +1 -1
- package/errors/transpilation-purpose-only.js +5 -10
- package/errors/transpilation-purpose-only.js.map +1 -1
- package/kassette/index.js +1 -1
- package/kassette/update-dates-in-mocks.js +66 -85
- package/kassette/update-dates-in-mocks.js.map +1 -1
- package/localization/index.js +1 -1
- package/localization/localization-mock.js +38 -60
- package/localization/localization-mock.js.map +1 -1
- package/mocks/index.js +1 -1
- package/mocks/mock-component-generator.js +54 -53
- package/mocks/mock-component-generator.js.map +1 -1
- package/package.json +27 -20
- package/public_api.js +1 -1
- package/schematics/ng-add/index.d.ts.map +1 -1
- package/schematics/ng-add/index.js +31 -26
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/playwright/index.d.ts.map +1 -1
- package/schematics/ng-add/playwright/index.js +17 -15
- package/schematics/ng-add/playwright/index.js.map +1 -1
- package/store/index.js +1 -1
- package/store/testable-select.js +13 -13
- package/store/testable-select.js.map +1 -1
- package/tools/index.js +1 -1
- package/tools/path-replacement/index.js +1 -1
- package/tools/path-replacement/path-replacement.js +24 -19
- package/tools/path-replacement/path-replacement.js.map +1 -1
- package/tools/protractor/fetch-manager/_fetch-manager.d.ts +1 -0
- package/tools/protractor/fetch-manager/_fetch-manager.d.ts.map +1 -0
- package/tools/protractor/fetch-manager/_fetch-manager.js +127 -0
- package/tools/protractor/fetch-manager/_fetch-manager.js.map +1 -0
- package/tools/protractor/fetch-manager/index.js +1 -1
- package/tools/protractor/fetch-manager/utils.js +15 -51
- package/tools/protractor/fetch-manager/utils.js.map +1 -1
- package/tools/protractor/index.js +1 -1
- package/tools/protractor/post-message-interceptor/_post-message-interceptor.d.ts +5 -0
- package/tools/protractor/post-message-interceptor/_post-message-interceptor.d.ts.map +1 -0
- package/tools/protractor/post-message-interceptor/_post-message-interceptor.js +157 -0
- package/tools/protractor/post-message-interceptor/_post-message-interceptor.js.map +1 -0
- package/tools/protractor/post-message-interceptor/index.js +1 -1
- package/tools/protractor/post-message-interceptor/post-message-interceptor.js +30 -103
- package/tools/protractor/post-message-interceptor/post-message-interceptor.js.map +1 -1
- package/visual-test/index.js +1 -1
- package/visual-test/utils.js +18 -7
- package/visual-test/utils.js.map +1 -1
- package/visual-test/visual-test.js +29 -34
- package/visual-test/visual-test.js.map +1 -1
- package/visual-testing-reporter/index.d.ts.map +1 -1
- package/visual-testing-reporter/index.js +37 -40
- package/visual-testing-reporter/index.js.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":";;;AAAA,8BAA8B;AAC9B,kCAAkC;AAClC,8DAE2C;AAC3C,2DAaoC;AACpC,gDAeyB;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/playwright/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/playwright/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,IAAI,EAKL,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,KAAK,eAAe,EAIpB,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAWzB;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,IAAI,CA6ElH"}
|
@@ -1,12 +1,15 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.updatePlaywright = updatePlaywright;
|
4
|
-
const fs = require("node:fs");
|
5
4
|
const path = require("node:path");
|
6
5
|
const core_1 = require("@angular-devkit/core");
|
7
6
|
const schematics_1 = require("@angular-devkit/schematics");
|
8
7
|
const schematics_2 = require("@o3r/schematics");
|
9
|
-
const
|
8
|
+
const devDependenciesToInstall = [
|
9
|
+
'@playwright/test',
|
10
|
+
'rimraf'
|
11
|
+
];
|
12
|
+
const dependenciesToInstall = [];
|
10
13
|
/**
|
11
14
|
* Add Playwright to Otter application
|
12
15
|
* @param options @see RuleFactory.options
|
@@ -14,20 +17,19 @@ const dependencies_1 = require("@schematics/angular/utility/dependencies");
|
|
14
17
|
*/
|
15
18
|
function updatePlaywright(options, dependencies) {
|
16
19
|
const corePackageJsonPath = path.resolve(__dirname, '..', '..', '..', 'package.json');
|
17
|
-
const ownPackageJson = JSON.parse(fs.readFileSync(corePackageJsonPath, { encoding: 'utf8' }));
|
18
|
-
dependencies['@playwright/test'] = {
|
19
|
-
inManifest: [{
|
20
|
-
range: ownPackageJson.devDependencies['@playwright/test'],
|
21
|
-
types: [dependencies_1.NodeDependencyType.Dev]
|
22
|
-
}]
|
23
|
-
};
|
24
|
-
dependencies.rimraf = {
|
25
|
-
inManifest: [{
|
26
|
-
range: ownPackageJson.devDependencies.rimraf,
|
27
|
-
types: [dependencies_1.NodeDependencyType.Dev]
|
28
|
-
}]
|
29
|
-
};
|
30
20
|
return (tree, context) => {
|
21
|
+
const workspaceProject = options.projectName ? (0, schematics_2.getWorkspaceConfig)(tree)?.projects[options.projectName] : undefined;
|
22
|
+
const projectPackageJson = tree.readJson(path.posix.join(workspaceProject?.root || '.', 'package.json'));
|
23
|
+
const externalDependencies = (0, schematics_2.getExternalDependenciesInfo)({
|
24
|
+
devDependenciesToInstall,
|
25
|
+
dependenciesToInstall,
|
26
|
+
o3rPackageJsonPath: corePackageJsonPath,
|
27
|
+
projectPackageJson,
|
28
|
+
projectType: workspaceProject?.projectType
|
29
|
+
}, context.logger);
|
30
|
+
Object.entries(externalDependencies).forEach(([key, value]) => {
|
31
|
+
dependencies[key] = value;
|
32
|
+
});
|
31
33
|
const workingDirectory = (options?.projectName && (0, schematics_2.getWorkspaceConfig)(tree)?.projects[options.projectName]?.root) || '.';
|
32
34
|
// update gitignore
|
33
35
|
const gitignorePath = '.gitignore';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/playwright/index.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/playwright/index.ts"],"names":[],"mappings":"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"}
|
package/store/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
|
3
|
+
const tslib_1 = require("tslib");
|
4
4
|
tslib_1.__exportStar(require("./testable-select"), exports);
|
5
5
|
tslib_1.__exportStar(require("./typings"), exports);
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/store/testable-select.js
CHANGED
@@ -5,14 +5,14 @@ exports.initializeSelectorSpies = initializeSelectorSpies;
|
|
5
5
|
exports.spyOnSelector = spyOnSelector;
|
6
6
|
exports.clearSelectorSpy = clearSelectorSpy;
|
7
7
|
exports.select = select;
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
8
|
+
const tslib_1 = require("tslib");
|
9
|
+
const store_1 = require("@ngrx/store");
|
10
|
+
const rxjs_1 = require("rxjs");
|
11
|
+
const typings_1 = require("./typings");
|
12
12
|
// eslint-disable-next-line import/export -- legacy code
|
13
13
|
tslib_1.__exportStar(require("@ngrx/store"), exports);
|
14
14
|
/** Global variable that holds the registered spies */
|
15
|
-
|
15
|
+
let registeredSpies = [];
|
16
16
|
/**
|
17
17
|
*
|
18
18
|
* PRIVATE METHODS
|
@@ -22,13 +22,13 @@ var registeredSpies = [];
|
|
22
22
|
* Searches for the index of given selector
|
23
23
|
* @param selectFn Selector function to be searched
|
24
24
|
*/
|
25
|
-
|
25
|
+
const getSpyIndex = (selectFn) => registeredSpies.findIndex((spy) => spy.selector === selectFn);
|
26
26
|
/**
|
27
27
|
* Searches for the given selector spy. Returns undefined if none is registered
|
28
28
|
* @param selectFn Selector function to be searched
|
29
29
|
*/
|
30
|
-
|
31
|
-
|
30
|
+
const getSpy = (selectFn) => {
|
31
|
+
const index = getSpyIndex(selectFn);
|
32
32
|
return index >= 0 ? registeredSpies[index] : undefined;
|
33
33
|
};
|
34
34
|
/**
|
@@ -36,7 +36,7 @@ var getSpy = function (selectFn) {
|
|
36
36
|
* @param spy The selector spy
|
37
37
|
*/
|
38
38
|
function useSpy(spy) {
|
39
|
-
return (0, typings_1.isSelectorSpyCall)(spy) ? spy.fakeResult :
|
39
|
+
return (0, typings_1.isSelectorSpyCall)(spy) ? spy.fakeResult : () => (0, rxjs_1.of)(spy.fakeResult);
|
40
40
|
}
|
41
41
|
/**
|
42
42
|
*
|
@@ -61,12 +61,12 @@ function initializeSelectorSpies() {
|
|
61
61
|
* @param fakeResult The fake result to be used when a select is triggered
|
62
62
|
*/
|
63
63
|
function spyOnSelector(selector, fakeResult) {
|
64
|
-
|
64
|
+
const spyIndex = getSpyIndex(selector);
|
65
65
|
if (spyIndex >= 0) {
|
66
66
|
registeredSpies[spyIndex].fakeResult = fakeResult;
|
67
67
|
}
|
68
68
|
else {
|
69
|
-
registeredSpies.push({ selector: selector, fakeResult
|
69
|
+
registeredSpies.push({ selector: selector, fakeResult });
|
70
70
|
}
|
71
71
|
}
|
72
72
|
/**
|
@@ -74,7 +74,7 @@ function spyOnSelector(selector, fakeResult) {
|
|
74
74
|
* @param selector Selector function that is being spied on
|
75
75
|
*/
|
76
76
|
function clearSelectorSpy(selector) {
|
77
|
-
|
77
|
+
const spyIndex = getSpyIndex(selector);
|
78
78
|
if (spyIndex >= 0) {
|
79
79
|
registeredSpies.splice(spyIndex, 1);
|
80
80
|
}
|
@@ -87,7 +87,7 @@ function clearSelectorSpy(selector) {
|
|
87
87
|
*/
|
88
88
|
// eslint-disable-next-line import/export -- legacy code
|
89
89
|
function select(selectFn, props) {
|
90
|
-
|
90
|
+
const spy = getSpy(selectFn);
|
91
91
|
return spy ? useSpy(spy) : (0, store_1.select)(selectFn, props);
|
92
92
|
}
|
93
93
|
//# sourceMappingURL=testable-select.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"testable-select.js","sourceRoot":"","sources":["../../src/store/testable-select.ts"],"names":[],"mappings":";;AAwDA,gDAEC;AAKD,0DAEC;AAOD,sCAOC;AAMD,4CAKC;AASD,wBAGC;;AAtGD,
|
1
|
+
{"version":3,"file":"testable-select.js","sourceRoot":"","sources":["../../src/store/testable-select.ts"],"names":[],"mappings":";;AAwDA,gDAEC;AAKD,0DAEC;AAOD,sCAOC;AAMD,4CAKC;AASD,wBAGC;;AAtGD,uCAEqB;AACrB,+BAGc;AACd,uCAKmB;AAEnB,wDAAwD;AACxD,sDAA4B;AAE5B,sDAAsD;AACtD,IAAI,eAAe,GAAuB,EAAE,CAAC;AAE7C;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,WAAW,GAAG,CAAmB,QAAkC,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AAC5I;;;GAGG;AACH,MAAM,MAAM,GAAG,CAAC,QAAuC,EAAE,EAAE;IACzD,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC,CAAC;AACF;;;GAGG;AACH,SAAS,MAAM,CAAI,GAAmB;IACpC,OAAO,IAAA,2BAAiB,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAA,SAAE,EAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAC;AAED;;;;GAIG;AAEH;;GAEG;AACH,SAAgB,kBAAkB;IAChC,eAAe,GAAG,EAAE,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB;IACrC,kBAAkB,EAAE,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAA+B,QAAgC,EAAE,UAAiC;IAC7H,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAClB,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAuC,EAAE,UAAU,EAAE,CAAC,CAAC;IAC1F,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAA+B,QAAgC;IAC7F,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAClB,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,wDAAwD;AACxD,SAAgB,MAAM,CAAC,QAAuC,EAAE,KAAc;IAC5E,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,cAAU,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC","sourcesContent":["import {\n select as baseSelect,\n} from '@ngrx/store';\nimport {\n Observable,\n of,\n} from 'rxjs';\nimport {\n FakeSelectCall,\n isSelectorSpyCall,\n SelectorFunction,\n SelectorSpy,\n} from './typings';\n\n// eslint-disable-next-line import/export -- legacy code\nexport * from '@ngrx/store';\n\n/** Global variable that holds the registered spies */\nlet registeredSpies: SelectorSpy<any>[] = [];\n\n/**\n *\n * PRIVATE METHODS\n *\n */\n\n/**\n * Searches for the index of given selector\n * @param selectFn Selector function to be searched\n */\nconst getSpyIndex = <S extends object>(selectFn: SelectorFunction<S, any>) => registeredSpies.findIndex((spy) => spy.selector === selectFn);\n/**\n * Searches for the given selector spy. Returns undefined if none is registered\n * @param selectFn Selector function to be searched\n */\nconst getSpy = (selectFn: SelectorFunction<object, any>) => {\n const index = getSpyIndex(selectFn);\n return index >= 0 ? registeredSpies[index] : undefined;\n};\n/**\n * Uses the spy as the return of a select\n * @param spy The selector spy\n */\nfunction useSpy<R>(spy: SelectorSpy<R>): (source$: Observable<any>) => Observable<R> {\n return isSelectorSpyCall(spy) ? spy.fakeResult : () => of(spy.fakeResult);\n}\n\n/**\n *\n * PUBLIC METHODS\n *\n */\n\n/**\n * Clears all the registered selector spies\n */\nexport function clearSelectorSpies() {\n registeredSpies = [];\n}\n\n/**\n * Initialize the selector spies structure\n */\nexport function initializeSelectorSpies() {\n clearSelectorSpies();\n}\n\n/**\n * Spy on a selector function\n * @param selector Selector function to be spied on\n * @param fakeResult The fake result to be used when a select is triggered\n */\nexport function spyOnSelector<R, S extends object = object>(selector: SelectorFunction<S, R>, fakeResult: R | FakeSelectCall<R>) {\n const spyIndex = getSpyIndex(selector);\n if (spyIndex >= 0) {\n registeredSpies[spyIndex].fakeResult = fakeResult;\n } else {\n registeredSpies.push({ selector: selector as SelectorFunction<object, R>, fakeResult });\n }\n}\n\n/**\n * Removes the spy on a given selector function\n * @param selector Selector function that is being spied on\n */\nexport function clearSelectorSpy<R, S extends object = object>(selector: SelectorFunction<S, R>) {\n const spyIndex = getSpyIndex(selector);\n if (spyIndex >= 0) {\n registeredSpies.splice(spyIndex, 1);\n }\n}\n\n/**\n * Highjacked ngrx/store select. It checks if the selector function is being spied on\n * and returns it's fake result. Otherwise, it runs the original ngrx/store select\n * @param selectFn Selector function to be used\n * @param props optional properties to be used by the selector\n */\n// eslint-disable-next-line import/export -- legacy code\nexport function select(selectFn: SelectorFunction<object, any>, props?: object) {\n const spy = getSpy(selectFn);\n return spy ? useSpy(spy) : baseSelect(selectFn, props);\n}\n"]}
|
package/tools/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
|
3
|
+
const tslib_1 = require("tslib");
|
4
4
|
tslib_1.__exportStar(require("./path-replacement"), exports);
|
5
5
|
tslib_1.__exportStar(require("./protractor"), exports);
|
6
6
|
//# sourceMappingURL=index.js.map
|
@@ -1,38 +1,43 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.adjustPath = adjustPath;
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
var module_from_string_1 = require("module-from-string");
|
4
|
+
const fs = require("node:fs");
|
5
|
+
const node_module_1 = require("node:module");
|
6
|
+
const path = require("node:path");
|
7
|
+
const esbuild_1 = require("esbuild");
|
8
|
+
const module_from_string_1 = require("module-from-string");
|
10
9
|
/**
|
11
10
|
* Switch to the needed implementation of core testing, when running e2e tests
|
12
11
|
* transforms ESM into CJS when needed
|
13
12
|
* @param frameworkName Name of the framework used for e2e testing (playwright|protractor)
|
14
13
|
* @param customTransformOptions
|
15
14
|
*/
|
16
|
-
function adjustPath(frameworkName, customTransformOptions) {
|
17
|
-
|
18
|
-
var modulesCache = {};
|
15
|
+
function adjustPath(frameworkName, customTransformOptions = {}) {
|
16
|
+
const modulesCache = {};
|
19
17
|
// eslint-disable-next-line @typescript-eslint/unbound-method -- No need to bind the method, we are using `apply`
|
20
|
-
|
21
|
-
|
18
|
+
const originalRequire = node_module_1.Module.prototype.require;
|
19
|
+
const regex = new RegExp(`@o3r/testing/core(?!/${frameworkName})(.*)`);
|
22
20
|
node_module_1.Module.prototype.require = function (id) {
|
23
|
-
|
21
|
+
const newId = id.replace(regex, `@o3r/testing/core/${frameworkName}$1`);
|
24
22
|
try {
|
25
23
|
return Reflect.apply(originalRequire, this, [newId]);
|
26
24
|
}
|
27
|
-
catch
|
28
|
-
|
29
|
-
.concat(this.paths, this.paths.map(
|
30
|
-
|
25
|
+
catch {
|
26
|
+
const paths = []
|
27
|
+
.concat(this.paths, this.paths.map((i) => i.replace(/[/\\]node_modules$/, '')));
|
28
|
+
const filePath = require.resolve(newId, { paths });
|
31
29
|
if (!modulesCache[filePath]) {
|
32
|
-
|
33
|
-
|
30
|
+
const fileContent = fs.readFileSync(filePath);
|
31
|
+
const cwd = path.resolve(process.cwd(), 'src');
|
34
32
|
// we use ESBUILD to transform it into CJS
|
35
|
-
|
33
|
+
const trans = (0, esbuild_1.transformSync)(fileContent.toString(), {
|
34
|
+
loader: 'js',
|
35
|
+
format: 'cjs',
|
36
|
+
target: 'es2016',
|
37
|
+
sourcesContent: true,
|
38
|
+
sourceRoot: cwd,
|
39
|
+
...customTransformOptions
|
40
|
+
});
|
36
41
|
/**
|
37
42
|
* requireFromString will execute the file apart from just returning a module
|
38
43
|
* It can throw an exception which will prevent stop the execution
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"path-replacement.js","sourceRoot":"","sources":["../../../src/tools/path-replacement/path-replacement.ts"],"names":[],"mappings":";;AAkBA,gCAiDC
|
1
|
+
{"version":3,"file":"path-replacement.js","sourceRoot":"","sources":["../../../src/tools/path-replacement/path-replacement.ts"],"names":[],"mappings":";;AAkBA,gCAiDC;AAnED,8BAA8B;AAC9B,6CAEqB;AACrB,kCAAkC;AAClC,qCAGiB;AACjB,2DAE4B;AAC5B;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,aAA0C,EAAE,yBAA2C,EAAE;IAClH,MAAM,YAAY,GAAwB,EAAE,CAAC;IAC7C,iHAAiH;IACjH,MAAM,eAAe,GAAG,oBAAM,CAAC,SAAS,CAAC,OAAO,CAAC;IACjD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,wBAAwB,aAAa,OAAO,CAAC,CAAC;IACvE,oBAAM,CAAC,SAAS,CAAC,OAAO,GAAG,UAA+B,EAAU;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,aAAa,IAAI,CAAC,CAAC;QAExE,IAAI,CAAC;YACH,OAAO,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,KAAK,GAAI,EAAe;iBAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAElF,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC/C,0CAA0C;gBAC1C,MAAM,KAAK,GAAG,IAAA,uBAAa,EAAC,WAAW,CAAC,QAAQ,EAAE,EAAE;oBAClD,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,QAAQ;oBAChB,cAAc,EAAE,IAAI;oBACpB,UAAU,EAAE,GAAG;oBACf,GAAG,sBAAsB;iBAC1B,CAAC,CAAC;gBAEH;;;;;;mBAMG;gBACH,IAAI,CAAC;oBACH,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAA,sCAAiB,EAAC,KAAK,CAAC,IAAI,EAAE;wBACrD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;wBAC/B,gBAAgB,EAAE,IAAI;qBACvB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,EAAE,EAAE,CAAC;oBACZ,mEAAmE;oBACnE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;YAED,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAmB,CAAC;AACtB,CAAC","sourcesContent":["import * as fs from 'node:fs';\nimport {\n Module,\n} from 'node:module';\nimport * as path from 'node:path';\nimport {\n TransformOptions,\n transformSync,\n} from 'esbuild';\nimport {\n requireFromString,\n} from 'module-from-string';\n/**\n * Switch to the needed implementation of core testing, when running e2e tests\n * transforms ESM into CJS when needed\n * @param frameworkName Name of the framework used for e2e testing (playwright|protractor)\n * @param customTransformOptions\n */\nexport function adjustPath(frameworkName: 'playwright' | 'protractor', customTransformOptions: TransformOptions = {}) {\n const modulesCache: Record<string, any> = {};\n // eslint-disable-next-line @typescript-eslint/unbound-method -- No need to bind the method, we are using `apply`\n const originalRequire = Module.prototype.require;\n const regex = new RegExp(`@o3r/testing/core(?!/${frameworkName})(.*)`);\n Module.prototype.require = function (this: NodeJS.Module, id: string) {\n const newId = id.replace(regex, `@o3r/testing/core/${frameworkName}$1`);\n\n try {\n return Reflect.apply(originalRequire, this, [newId]);\n } catch {\n const paths = ([] as string[])\n .concat(this.paths, this.paths.map((i) => i.replace(/[/\\\\]node_modules$/, '')));\n\n const filePath = require.resolve(newId, { paths });\n if (!modulesCache[filePath]) {\n const fileContent = fs.readFileSync(filePath);\n const cwd = path.resolve(process.cwd(), 'src');\n // we use ESBUILD to transform it into CJS\n const trans = transformSync(fileContent.toString(), {\n loader: 'js',\n format: 'cjs',\n target: 'es2016',\n sourcesContent: true,\n sourceRoot: cwd,\n ...customTransformOptions\n });\n\n /**\n * requireFromString will execute the file apart from just returning a module\n * It can throw an exception which will prevent stop the execution\n *\n * That main blocker includes IVY-compatible libraries which have\n * no compiler facade in a global scope.\n */\n try {\n modulesCache[filePath] = requireFromString(trans.code, {\n dirname: path.dirname(filePath),\n useCurrentGlobal: true\n });\n } catch (ex) {\n // eslint-disable-next-line no-console -- no other logger available\n console.error(ex);\n }\n }\n\n return modulesCache[filePath];\n }\n } as NodeJS.Require;\n}\n"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
//# sourceMappingURL=_fetch-manager.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"_fetch-manager.d.ts","sourceRoot":"","sources":["../../../../src/tools/protractor/fetch-manager/_fetch-manager.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,127 @@
|
|
1
|
+
"use strict";
|
2
|
+
/**
|
3
|
+
* Note: This file is not part of the running script, it is injected in the browser while running e2e tests.
|
4
|
+
*/
|
5
|
+
(function () {
|
6
|
+
var MAX_WAITING_TIME_FOR_FETCH = 45 * 1000; // 45 seconds
|
7
|
+
var fetchManager = /** @class */ (function () {
|
8
|
+
function FetchManager() {
|
9
|
+
this.nbCurrentFetch = 0;
|
10
|
+
}
|
11
|
+
FetchManager.prototype.interceptor = function (ref, nativeFetch) {
|
12
|
+
var args = [];
|
13
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
14
|
+
args[_i - 2] = arguments[_i];
|
15
|
+
}
|
16
|
+
var promise = Promise.resolve(args);
|
17
|
+
promise = promise.then(function () {
|
18
|
+
ref.nbCurrentFetch++;
|
19
|
+
return [args[0], args[1]];
|
20
|
+
}, function (error) {
|
21
|
+
return Promise.reject(new Error(error));
|
22
|
+
});
|
23
|
+
promise = promise.then(function () { return nativeFetch.apply(void 0, args); });
|
24
|
+
promise = promise.then(function (response) {
|
25
|
+
ref.nbCurrentFetch--;
|
26
|
+
return response;
|
27
|
+
}, function (error) {
|
28
|
+
ref.nbCurrentFetch--;
|
29
|
+
return Promise.reject(new Error(error));
|
30
|
+
});
|
31
|
+
return promise;
|
32
|
+
};
|
33
|
+
/**
|
34
|
+
* Register the fetch events to count the number of pending fetch.
|
35
|
+
*/
|
36
|
+
FetchManager.prototype.registerFetchInterceptor = function () {
|
37
|
+
var _this = this;
|
38
|
+
var nativeFetch = window.fetch;
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias, unicorn/no-this-assignment -- needed for the context
|
40
|
+
var that = this;
|
41
|
+
Object.assign(window, { fetch: function () {
|
42
|
+
var args = [];
|
43
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
44
|
+
args[_i] = arguments[_i];
|
45
|
+
}
|
46
|
+
return _this.interceptor.apply(_this, __spreadArray([that, nativeFetch], args, false));
|
47
|
+
} });
|
48
|
+
};
|
49
|
+
FetchManager.prototype.unregisterFetchInterceptor = function () {
|
50
|
+
Object.assign(window, { fetch: this.windowFetch });
|
51
|
+
};
|
52
|
+
/**
|
53
|
+
* Returns the single instance of FetchManager
|
54
|
+
*/
|
55
|
+
FetchManager.getInstance = function () {
|
56
|
+
return this._instance || (this._instance = new this());
|
57
|
+
};
|
58
|
+
/**
|
59
|
+
* Initialize the fetch manager
|
60
|
+
*/
|
61
|
+
FetchManager.prototype.init = function () {
|
62
|
+
this.nbCurrentFetch = 0;
|
63
|
+
this.registerFetchInterceptor();
|
64
|
+
};
|
65
|
+
/**
|
66
|
+
* Stop the interceptor
|
67
|
+
*/
|
68
|
+
FetchManager.prototype.stop = function () {
|
69
|
+
this.nbCurrentFetch = 0;
|
70
|
+
this.unregisterFetchInterceptor();
|
71
|
+
};
|
72
|
+
/**
|
73
|
+
* Get the number of active fetchs on the page.
|
74
|
+
*/
|
75
|
+
FetchManager.prototype.getPendingFetchs = function () {
|
76
|
+
return this.nbCurrentFetch;
|
77
|
+
};
|
78
|
+
/**
|
79
|
+
* This function waits for all fetchs calls to be resolved and the page to be stable to call the callback.
|
80
|
+
* It permits to easily run synchronous tests with protractor.
|
81
|
+
* This is very usefull in the case of Otter calls to backend because protractor synchronization manager do not care
|
82
|
+
* about fetchs calls. As a consequence, the `waitForAngular` method will not work.
|
83
|
+
* @param callback : Callback called when all the fetchs are finished and the page is stable.
|
84
|
+
* @param timeoutInterval : Interval in milliseconds between two checks of the number of pending fetchs
|
85
|
+
*/
|
86
|
+
FetchManager.prototype.waitForFetchs = function (callback, timeoutInterval) {
|
87
|
+
var _this = this;
|
88
|
+
if (timeoutInterval === void 0) { timeoutInterval = 100; }
|
89
|
+
var interval;
|
90
|
+
var timeout;
|
91
|
+
if (!this.getPendingFetchs()) {
|
92
|
+
callback();
|
93
|
+
return;
|
94
|
+
}
|
95
|
+
var cancelPolling = function () {
|
96
|
+
if (interval) {
|
97
|
+
clearInterval(interval);
|
98
|
+
interval = undefined;
|
99
|
+
}
|
100
|
+
if (timeout) {
|
101
|
+
clearTimeout(timeout);
|
102
|
+
timeout = undefined;
|
103
|
+
}
|
104
|
+
// Handle polling result
|
105
|
+
if (_this.getPendingFetchs() > 0) {
|
106
|
+
// Error case will just log in console
|
107
|
+
// and allow to continue as o3r elements might be checking fetchManager
|
108
|
+
// concurrently
|
109
|
+
_this.nbCurrentFetch = 0;
|
110
|
+
callback();
|
111
|
+
throw new Error('Fetch timeout. Please check network requests.');
|
112
|
+
}
|
113
|
+
else {
|
114
|
+
callback();
|
115
|
+
}
|
116
|
+
};
|
117
|
+
var polling = function () { return _this.getPendingFetchs() > 0 || cancelPolling(); };
|
118
|
+
interval = setInterval(polling, timeoutInterval);
|
119
|
+
timeout = setTimeout(cancelPolling, MAX_WAITING_TIME_FOR_FETCH);
|
120
|
+
};
|
121
|
+
return FetchManager;
|
122
|
+
}());
|
123
|
+
if (!('fetchManager' in window)) {
|
124
|
+
Object.assign(window, { fetchManager: fetchManager });
|
125
|
+
}
|
126
|
+
})();
|
127
|
+
//# sourceMappingURL=_fetch-manager.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"_fetch-manager.js","sourceRoot":"","sources":["../../../../src/tools/protractor/fetch-manager/_fetch-manager.ts"],"names":[],"mappings":"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"}
|
@@ -3,10 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.waitForOtterStable = waitForOtterStable;
|
4
4
|
exports.initFetchManager = initFetchManager;
|
5
5
|
exports.stopFetchManager = stopFetchManager;
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
var protractor_1 = require("protractor");
|
6
|
+
const fs = require("node:fs");
|
7
|
+
const path = require("node:path");
|
8
|
+
const protractor_1 = require("protractor");
|
10
9
|
/**
|
11
10
|
* This function waits for all fetchs calls to be resolved and the page to be stable to resolve the promise.
|
12
11
|
* It permits to easily run synchronous e2e tests on a flow that uses fetchs calls with protractor.
|
@@ -19,63 +18,28 @@ var protractor_1 = require("protractor");
|
|
19
18
|
* You can ignore the waiting of fetchs by setting `browser.ignoreSynchronization` to `true`
|
20
19
|
* @deprecated Will be removed in v13, please use Playwright instead
|
21
20
|
*/
|
22
|
-
function waitForOtterStable() {
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
_a.sent();
|
29
|
-
if (!!protractor_1.browser.ignoreSynchronization) return [3 /*break*/, 4];
|
30
|
-
return [4 /*yield*/, protractor_1.browser.executeAsyncScript('window.fetchManager.getInstance().waitForFetchs(arguments[arguments.length - 1]);')];
|
31
|
-
case 2:
|
32
|
-
_a.sent();
|
33
|
-
return [4 /*yield*/, protractor_1.browser.waitForAngular()];
|
34
|
-
case 3:
|
35
|
-
_a.sent();
|
36
|
-
_a.label = 4;
|
37
|
-
case 4: return [2 /*return*/];
|
38
|
-
}
|
39
|
-
});
|
40
|
-
});
|
21
|
+
async function waitForOtterStable() {
|
22
|
+
await protractor_1.browser.waitForAngular();
|
23
|
+
if (!protractor_1.browser.ignoreSynchronization) {
|
24
|
+
await protractor_1.browser.executeAsyncScript('window.fetchManager.getInstance().waitForFetchs(arguments[arguments.length - 1]);');
|
25
|
+
await protractor_1.browser.waitForAngular();
|
26
|
+
}
|
41
27
|
}
|
42
28
|
/**
|
43
29
|
* This function initiliaze the FetchManager. Set `window.fetch` variable with a custom behaviour in order to count the
|
44
30
|
* fetch calls.
|
45
31
|
* @deprecated Will be removed in v13, please use Playwright instead
|
46
32
|
*/
|
47
|
-
function initFetchManager() {
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
switch (_a.label) {
|
52
|
-
case 0:
|
53
|
-
fetchManager = fs.readFileSync(path.resolve(process.cwd(), 'node_modules', '@o3r', 'testing', 'tools', 'protractor', 'fetch-manager', '_fetch-manager.js'), { encoding: 'utf8' });
|
54
|
-
return [4 /*yield*/, protractor_1.browser.executeScript(fetchManager)];
|
55
|
-
case 1:
|
56
|
-
_a.sent();
|
57
|
-
return [4 /*yield*/, protractor_1.browser.executeScript('window.fetchManager.getInstance().init();')];
|
58
|
-
case 2:
|
59
|
-
_a.sent();
|
60
|
-
return [2 /*return*/];
|
61
|
-
}
|
62
|
-
});
|
63
|
-
});
|
33
|
+
async function initFetchManager() {
|
34
|
+
const fetchManager = fs.readFileSync(path.resolve(process.cwd(), 'node_modules', '@o3r', 'testing', 'tools', 'protractor', 'fetch-manager', '_fetch-manager.js'), { encoding: 'utf8' });
|
35
|
+
await protractor_1.browser.executeScript(fetchManager);
|
36
|
+
await protractor_1.browser.executeScript('window.fetchManager.getInstance().init();');
|
64
37
|
}
|
65
38
|
/**
|
66
39
|
* This function stops the FetchManager. Reset `window.fetch` variable with its native behaviour.
|
67
40
|
* @deprecated Will be removed in v13, please use Playwright instead
|
68
41
|
*/
|
69
|
-
function stopFetchManager() {
|
70
|
-
|
71
|
-
return tslib_1.__generator(this, function (_a) {
|
72
|
-
switch (_a.label) {
|
73
|
-
case 0: return [4 /*yield*/, protractor_1.browser.executeScript('window.fetchManager.getInstance().stop();')];
|
74
|
-
case 1:
|
75
|
-
_a.sent();
|
76
|
-
return [2 /*return*/];
|
77
|
-
}
|
78
|
-
});
|
79
|
-
});
|
42
|
+
async function stopFetchManager() {
|
43
|
+
await protractor_1.browser.executeScript('window.fetchManager.getInstance().stop();');
|
80
44
|
}
|
81
45
|
//# sourceMappingURL=utils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/protractor/fetch-manager/utils.ts"],"names":[],"mappings":";;AAkBA,gDAOC;AAOD,4CAQC;AAMD,4CAEC
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/protractor/fetch-manager/utils.ts"],"names":[],"mappings":";;AAkBA,gDAOC;AAOD,4CAQC;AAMD,4CAEC;AAhDD,8BAA8B;AAC9B,kCAAkC;AAClC,2CAEoB;AAEpB;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,kBAAkB;IACtC,MAAM,oBAAO,CAAC,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,oBAAO,CAAC,qBAAqB,EAAE,CAAC;QACnC,MAAM,oBAAO,CAAC,kBAAkB,CAC9B,mFAAmF,CAAC,CAAC;QACvF,MAAM,oBAAO,CAAC,cAAc,EAAE,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,gBAAgB;IACpC,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAClC,IAAI,CAAC,OAAO,CACV,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EACxF,mBAAmB,CAAC,EACtB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACxB,MAAM,oBAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC1C,MAAM,oBAAO,CAAC,aAAa,CAAC,2CAA2C,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,gBAAgB;IACpC,MAAM,oBAAO,CAAC,aAAa,CAAC,2CAA2C,CAAC,CAAC;AAC3E,CAAC","sourcesContent":["import * as fs from 'node:fs';\nimport * as path from 'node:path';\nimport {\n browser,\n} from 'protractor';\n\n/**\n * This function waits for all fetchs calls to be resolved and the page to be stable to resolve the promise.\n * It permits to easily run synchronous e2e tests on a flow that uses fetchs calls with protractor.\n * This is very useful in the case of Otter calls to backend because protractor synchronization manager do not care\n * about fetchs calls.\n *\n * This function needs the FetchManager to have been initialized and injected in the browser at the beginning of the\n * flow with `initFetchManager()`\n *\n * You can ignore the waiting of fetchs by setting `browser.ignoreSynchronization` to `true`\n * @deprecated Will be removed in v13, please use Playwright instead\n */\nexport async function waitForOtterStable() {\n await browser.waitForAngular();\n if (!browser.ignoreSynchronization) {\n await browser.executeAsyncScript(\n 'window.fetchManager.getInstance().waitForFetchs(arguments[arguments.length - 1]);');\n await browser.waitForAngular();\n }\n}\n\n/**\n * This function initiliaze the FetchManager. Set `window.fetch` variable with a custom behaviour in order to count the\n * fetch calls.\n * @deprecated Will be removed in v13, please use Playwright instead\n */\nexport async function initFetchManager() {\n const fetchManager = fs.readFileSync(\n path.resolve(\n process.cwd(), 'node_modules', '@o3r', 'testing', 'tools', 'protractor', 'fetch-manager',\n '_fetch-manager.js'),\n { encoding: 'utf8' });\n await browser.executeScript(fetchManager);\n await browser.executeScript('window.fetchManager.getInstance().init();');\n}\n\n/**\n * This function stops the FetchManager. Reset `window.fetch` variable with its native behaviour.\n * @deprecated Will be removed in v13, please use Playwright instead\n */\nexport async function stopFetchManager() {\n await browser.executeScript('window.fetchManager.getInstance().stop();');\n}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
|
3
|
+
const tslib_1 = require("tslib");
|
4
4
|
tslib_1.__exportStar(require("./fetch-manager"), exports);
|
5
5
|
tslib_1.__exportStar(require("./post-message-interceptor"), exports);
|
6
6
|
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"_post-message-interceptor.d.ts","sourceRoot":"","sources":["../../../../src/tools/protractor/post-message-interceptor/_post-message-interceptor.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|