testeranto 0.82.0 → 0.85.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/README.md +0 -2
- package/dist/common/package.json +3 -0
- package/dist/common/src/Node.js +2 -0
- package/dist/common/src/PM/main.js +182 -79
- package/dist/common/src/PM/node.js +32 -6
- package/dist/common/src/PM/web.js +28 -54
- package/dist/common/src/Project.js +0 -3
- package/dist/common/src/Puppeteer.js +9 -51
- package/dist/common/src/SubPackages/react-dom/jsx/web.js +11 -11
- package/dist/common/src/Web.js +2 -0
- package/dist/common/src/esbuildConfigs/featuresPlugin.js +39 -0
- package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +62 -41
- package/dist/common/src/esbuildConfigs/node.js +10 -3
- package/dist/common/src/esbuildConfigs/web.js +6 -2
- package/dist/common/src/lib/abstractBase.js +343 -335
- package/dist/common/src/lib/basebuilder.js +7 -3
- package/dist/common/src/lib/core.js +1 -1
- package/dist/common/tsconfig.common.tsbuildinfo +1 -1
- package/dist/module/package.json +3 -0
- package/dist/module/src/Node.js +1 -1
- package/dist/module/src/PM/main.js +182 -79
- package/dist/module/src/PM/node.js +32 -6
- package/dist/module/src/PM/web.js +28 -51
- package/dist/module/src/Project.js +0 -3
- package/dist/module/src/Puppeteer.js +9 -51
- package/dist/module/src/SubPackages/react-dom/jsx/web.js +10 -10
- package/dist/module/src/Web.js +1 -1
- package/dist/module/src/esbuildConfigs/featuresPlugin.js +34 -0
- package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +62 -41
- package/dist/module/src/esbuildConfigs/node.js +10 -3
- package/dist/module/src/esbuildConfigs/web.js +6 -2
- package/dist/module/src/lib/abstractBase.js +343 -335
- package/dist/module/src/lib/basebuilder.js +7 -3
- package/dist/module/src/lib/core.js +1 -1
- package/dist/module/tsconfig.module.tsbuildinfo +1 -1
- package/dist/prebuild/Puppeteer.mjs +82033 -0
- package/dist/types/src/Node.d.ts +5 -1
- package/dist/types/src/PM/index.d.ts +10 -4
- package/dist/types/src/PM/main.d.ts +21 -9
- package/dist/types/src/PM/node.d.ts +11 -3
- package/dist/types/src/PM/web.d.ts +11 -2
- package/dist/types/src/SubPackages/react-dom/jsx/index.d.ts +1 -0
- package/dist/types/src/SubPackages/react-test-renderer/jsx/index.d.ts +1 -0
- package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/index.d.ts +1 -0
- package/dist/types/src/Types.d.ts +2 -2
- package/dist/types/src/Web.d.ts +5 -1
- package/dist/types/src/esbuildConfigs/featuresPlugin.d.ts +5 -0
- package/dist/types/src/esbuildConfigs/inputFilesPlugin.d.ts +4 -2
- package/dist/types/src/lib/abstractBase.d.ts +5 -5
- package/dist/types/src/lib/types.d.ts +7 -5
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +18 -41
- package/pupBuild.js +18 -0
- package/src/Node.ts +1 -3
- package/src/PM/index.ts +12 -3
- package/src/PM/main.ts +300 -164
- package/src/PM/node.ts +40 -6
- package/src/PM/web.ts +108 -58
- package/src/Project.ts +0 -8
- package/src/Puppeteer.ts +11 -57
- package/src/SubPackages/react-dom/jsx/web.ts +15 -10
- package/src/Types.ts +5 -2
- package/src/Web.ts +1 -1
- package/src/esbuildConfigs/featuresPlugin.ts +43 -0
- package/src/esbuildConfigs/inputFilesPlugin.ts +98 -66
- package/src/esbuildConfigs/node.ts +18 -3
- package/src/esbuildConfigs/web.ts +14 -2
- package/src/lib/abstractBase.ts +381 -364
- package/src/lib/basebuilder.ts +7 -7
- package/src/lib/core.ts +1 -1
- package/src/lib/types.ts +13 -5
|
@@ -12,12 +12,12 @@ export class BaseSuite {
|
|
|
12
12
|
.flat()
|
|
13
13
|
.filter((value, index, array) => {
|
|
14
14
|
return array.indexOf(value) === index;
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}, {});
|
|
20
|
-
return features;
|
|
15
|
+
});
|
|
16
|
+
// .reduce((mm, lm) => {
|
|
17
|
+
// mm[lm] = lm;
|
|
18
|
+
// return mm;
|
|
19
|
+
// }, {});
|
|
20
|
+
return features || [];
|
|
21
21
|
}
|
|
22
22
|
toObj() {
|
|
23
23
|
const givens = Object.keys(this.givens).map((k) => this.givens[k].toObj());
|
|
@@ -48,56 +48,66 @@ export class BaseSuite {
|
|
|
48
48
|
for (const [gNdx, g] of Object.entries(this.givens)) {
|
|
49
49
|
const beforeAllProxy = new Proxy(pm, {
|
|
50
50
|
get(target, prop, receiver) {
|
|
51
|
+
if (prop === "customScreenShot") {
|
|
52
|
+
return (opts) => target.customScreenShot(Object.assign(Object.assign({}, opts), {
|
|
53
|
+
// path: `${filepath}/${opts.path}`,
|
|
54
|
+
path: `suite-${sNdx}/beforeAll/${opts.path}` }));
|
|
55
|
+
}
|
|
51
56
|
if (prop === "writeFileSync") {
|
|
52
57
|
return (fp, contents) => target[prop](`suite-${sNdx}/beforeAll/${fp}`, contents);
|
|
53
58
|
}
|
|
54
|
-
if (prop === "browser") {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
59
|
+
// if (prop === "browser") {
|
|
60
|
+
// return new Proxy(target[prop], {
|
|
61
|
+
// get(bTarget, bProp, bReceiver) {
|
|
62
|
+
// if (bProp === "pages") {
|
|
63
|
+
// return async () => {
|
|
64
|
+
// return bTarget.pages().then((pages) => {
|
|
65
|
+
// return pages.map((page) => {
|
|
66
|
+
// return new Proxy(page, {
|
|
67
|
+
// get(pTarget, pProp, pReciever) {
|
|
68
|
+
// if (pProp === "screenshot") {
|
|
69
|
+
// return async (x) => {
|
|
70
|
+
// return pm.customScreenShot(
|
|
71
|
+
// {
|
|
72
|
+
// ...x,
|
|
73
|
+
// path:
|
|
74
|
+
// `${testResourceConfiguration.fs}/suite-${sNdx}/beforeAll` +
|
|
75
|
+
// "/" +
|
|
76
|
+
// x.path,
|
|
77
|
+
// },
|
|
78
|
+
// page
|
|
79
|
+
// );
|
|
80
|
+
// // return await window["custom-screenshot"]({
|
|
81
|
+
// // ...x,
|
|
82
|
+
// // path:
|
|
83
|
+
// // `${testResourceConfiguration.fs}/suite-${sNdx}/afterAll` +
|
|
84
|
+
// // "/" +
|
|
85
|
+
// // x.path,
|
|
86
|
+
// // });
|
|
87
|
+
// };
|
|
88
|
+
// } else if (pProp === "mainFrame") {
|
|
89
|
+
// return () => pTarget[pProp]();
|
|
90
|
+
// } else if (pProp === "close") {
|
|
91
|
+
// return () => pTarget[pProp]();
|
|
92
|
+
// }
|
|
93
|
+
// // else if (pProp === "mainFrame") {
|
|
94
|
+
// // return () => target[pProp](...arguments);
|
|
95
|
+
// // }
|
|
96
|
+
// else {
|
|
97
|
+
// return Reflect.get(...arguments);
|
|
98
|
+
// }
|
|
99
|
+
// },
|
|
100
|
+
// });
|
|
101
|
+
// });
|
|
102
|
+
// });
|
|
103
|
+
// // return (await target.pages()).map((page) => {
|
|
104
|
+
// // return new Proxy(page, handler2);
|
|
105
|
+
// // });
|
|
106
|
+
// };
|
|
107
|
+
// }
|
|
108
|
+
// },
|
|
109
|
+
// });
|
|
110
|
+
// }
|
|
101
111
|
return Reflect.get(...arguments);
|
|
102
112
|
},
|
|
103
113
|
});
|
|
@@ -112,64 +122,68 @@ export class BaseSuite {
|
|
|
112
122
|
// return this;
|
|
113
123
|
}
|
|
114
124
|
}
|
|
115
|
-
const afterAllProxy = new Proxy(pm, {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
}
|
|
170
|
-
//
|
|
125
|
+
// const afterAllProxy = new Proxy(pm, {
|
|
126
|
+
// get(target, prop, receiver) {
|
|
127
|
+
// if (prop === "writeFileSync") {
|
|
128
|
+
// return (fp, contents) =>
|
|
129
|
+
// target[prop](`suite-${sNdx}/afterAll/${fp}`, contents);
|
|
130
|
+
// }
|
|
131
|
+
// if (prop === "browser") {
|
|
132
|
+
// return new Proxy(target[prop], {
|
|
133
|
+
// get(bTarget, bProp, bReceiver) {
|
|
134
|
+
// if (bProp === "pages") {
|
|
135
|
+
// return async () => {
|
|
136
|
+
// return bTarget.pages().then((pages) => {
|
|
137
|
+
// return pages.map((page) => {
|
|
138
|
+
// return new Proxy(page, {
|
|
139
|
+
// get(pTarget, pProp, pReciever) {
|
|
140
|
+
// if (pProp === "screenshot") {
|
|
141
|
+
// return async (x) => {
|
|
142
|
+
// return pm.customScreenShot({
|
|
143
|
+
// ...x,
|
|
144
|
+
// path:
|
|
145
|
+
// `${testResourceConfiguration.fs}/suite-${sNdx}/afterAll` +
|
|
146
|
+
// "/" +
|
|
147
|
+
// x.path,
|
|
148
|
+
// });
|
|
149
|
+
// // return await window["custom-screenshot"]({
|
|
150
|
+
// // ...x,
|
|
151
|
+
// // path:
|
|
152
|
+
// // `${testResourceConfiguration.fs}/suite-${sNdx}/afterAll` +
|
|
153
|
+
// // "/" +
|
|
154
|
+
// // x.path,
|
|
155
|
+
// // });
|
|
156
|
+
// };
|
|
157
|
+
// } else if (pProp === "mainFrame") {
|
|
158
|
+
// return () => pTarget[pProp]();
|
|
159
|
+
// } else if (pProp === "close") {
|
|
160
|
+
// return () => pTarget[pProp]();
|
|
161
|
+
// }
|
|
162
|
+
// // else if (pProp === "mainFrame") {
|
|
163
|
+
// // return () => target[pProp](...arguments);
|
|
164
|
+
// // }
|
|
165
|
+
// else {
|
|
166
|
+
// return Reflect.get(...arguments);
|
|
167
|
+
// }
|
|
168
|
+
// },
|
|
169
|
+
// });
|
|
170
|
+
// });
|
|
171
|
+
// });
|
|
172
|
+
// // return (await target.pages()).map((page) => {
|
|
173
|
+
// // return new Proxy(page, handler2);
|
|
174
|
+
// // });
|
|
175
|
+
// };
|
|
176
|
+
// }
|
|
177
|
+
// },
|
|
178
|
+
// });
|
|
179
|
+
// }
|
|
180
|
+
// return Reflect.get(...arguments);
|
|
181
|
+
// },
|
|
182
|
+
// });
|
|
171
183
|
try {
|
|
172
|
-
this.afterAll(this.store, artifactory,
|
|
184
|
+
this.afterAll(this.store, artifactory,
|
|
185
|
+
// afterAllProxy
|
|
186
|
+
pm);
|
|
173
187
|
}
|
|
174
188
|
catch (e) {
|
|
175
189
|
console.error(e);
|
|
@@ -237,6 +251,11 @@ export class BaseGiven {
|
|
|
237
251
|
if (prop === "writeFileSync") {
|
|
238
252
|
return (fp, contents) => target[prop](`suite-${suiteNdx}/given-${key}/when/beforeEach/${fp}`, contents);
|
|
239
253
|
}
|
|
254
|
+
if (prop === "customScreenShot") {
|
|
255
|
+
return (opts) => target.customScreenShot(Object.assign(Object.assign({}, opts), {
|
|
256
|
+
// path: `${filepath}/${opts.path}`,
|
|
257
|
+
path: `suite-${suiteNdx}/given-${key}/when/beforeEach/${opts.path}` }));
|
|
258
|
+
}
|
|
240
259
|
return Reflect.get(...arguments);
|
|
241
260
|
},
|
|
242
261
|
});
|
|
@@ -259,89 +278,84 @@ export class BaseGiven {
|
|
|
259
278
|
}
|
|
260
279
|
finally {
|
|
261
280
|
try {
|
|
262
|
-
// const afterEachProxy = new Proxy(pm, {
|
|
263
|
-
// get(target, prop, receiver) {
|
|
264
|
-
// if (prop === "writeFileSync") {
|
|
265
|
-
// console.log("afterEachProxy", arguments, target[prop]);
|
|
266
|
-
// return (fp, contents) =>
|
|
267
|
-
// // target[prop](`${key}/andWhen/${fp}`, contents);
|
|
268
|
-
// target[prop](`${key}/afterEach/${fp}`, contents);
|
|
269
|
-
// }
|
|
270
|
-
// return Reflect.get(...arguments);
|
|
271
|
-
// },
|
|
272
|
-
// });
|
|
273
|
-
// await this.afterEach(this.store, key, givenArtifactory, afterEachProxy);
|
|
274
|
-
// await this.afterEach(this.store, key, givenArtifactory, pm);
|
|
275
281
|
const afterEachProxy = new Proxy(pm, {
|
|
276
282
|
get(target, prop, receiver) {
|
|
277
|
-
if (prop === "
|
|
278
|
-
return (
|
|
283
|
+
if (prop === "customScreenShot") {
|
|
284
|
+
return (opts) => target.customScreenShot(Object.assign(Object.assign({}, opts), { path: `suite-${suiteNdx}/given-${key}/afterEach/${opts.path}` }));
|
|
279
285
|
}
|
|
280
|
-
if (prop === "
|
|
281
|
-
return
|
|
282
|
-
get(bTarget, bProp, bReceiver) {
|
|
283
|
-
if (bProp === "pages") {
|
|
284
|
-
return async () => {
|
|
285
|
-
return bTarget.pages().then((pages) => {
|
|
286
|
-
return pages.map((page) => {
|
|
287
|
-
return new Proxy(page, {
|
|
288
|
-
get(pTarget, pProp, pReciever) {
|
|
289
|
-
if (pProp === "screenshot") {
|
|
290
|
-
return async (x) => {
|
|
291
|
-
// console.log(
|
|
292
|
-
// "custom-screenshot-MARK-afterEachProxy",
|
|
293
|
-
// window["custom-screenshot"].toString()
|
|
294
|
-
// );
|
|
295
|
-
return pm.customScreenShot(Object.assign(Object.assign({}, x), { path: `${testResourceConfiguration.fs}/suite-${suiteNdx}/given-${key}/afterEach` +
|
|
296
|
-
"/" +
|
|
297
|
-
x.path }), page);
|
|
298
|
-
// return await pTarget[pProp]({
|
|
299
|
-
// ...x,
|
|
300
|
-
// path:
|
|
301
|
-
// `${testResourceConfiguration.fs}/suite-${suiteNdx}/given-${key}/afterEach` +
|
|
302
|
-
// "/" +
|
|
303
|
-
// x.path,
|
|
304
|
-
// });
|
|
305
|
-
};
|
|
306
|
-
}
|
|
307
|
-
else if (pProp === "mainFrame") {
|
|
308
|
-
return () => pTarget[pProp]();
|
|
309
|
-
// return target[pProp];
|
|
310
|
-
// return Reflect.get(...arguments);
|
|
311
|
-
}
|
|
312
|
-
else if (pProp === "exposeFunction") {
|
|
313
|
-
// return Reflect.get(target, prop, receiver);
|
|
314
|
-
return (...a) => pTarget[pProp](...a);
|
|
315
|
-
// return target[pProp];
|
|
316
|
-
}
|
|
317
|
-
else if (pProp === "removeExposedFunction") {
|
|
318
|
-
// return Reflect.get(target, prop, receiver);
|
|
319
|
-
return pTarget[pProp].bind(pTarget);
|
|
320
|
-
// return target[pProp];
|
|
321
|
-
}
|
|
322
|
-
// else if (pProp === "#frameManager") {
|
|
323
|
-
// return () => target[pProp](...arguments);
|
|
324
|
-
// }
|
|
325
|
-
else {
|
|
326
|
-
return Reflect.get(...arguments);
|
|
327
|
-
}
|
|
328
|
-
},
|
|
329
|
-
});
|
|
330
|
-
});
|
|
331
|
-
});
|
|
332
|
-
// return (await target.pages()).map((page) => {
|
|
333
|
-
// return new Proxy(page, handler2);
|
|
334
|
-
// });
|
|
335
|
-
};
|
|
336
|
-
}
|
|
337
|
-
},
|
|
338
|
-
});
|
|
286
|
+
if (prop === "writeFileSync") {
|
|
287
|
+
return (fp, contents) => target[prop](`suite-${suiteNdx}/given-${key}/afterEach/${fp}`, contents);
|
|
339
288
|
}
|
|
289
|
+
// if (prop === "browser") {
|
|
290
|
+
// return new Proxy(target[prop], {
|
|
291
|
+
// get(bTarget, bProp, bReceiver) {
|
|
292
|
+
// if (bProp === "pages") {
|
|
293
|
+
// return async () => {
|
|
294
|
+
// return bTarget.pages().then((pages) => {
|
|
295
|
+
// return pages.map((page) => {
|
|
296
|
+
// return new Proxy(page, {
|
|
297
|
+
// get(pTarget, pProp, pReciever) {
|
|
298
|
+
// if (pProp === "screenshot") {
|
|
299
|
+
// return async (x) => {
|
|
300
|
+
// // console.log(
|
|
301
|
+
// // "custom-screenshot-MARK-afterEachProxy",
|
|
302
|
+
// // window["custom-screenshot"].toString()
|
|
303
|
+
// // );
|
|
304
|
+
// return pm.customScreenShot(
|
|
305
|
+
// {
|
|
306
|
+
// ...x,
|
|
307
|
+
// path:
|
|
308
|
+
// `${testResourceConfiguration.fs}/suite-${suiteNdx}/given-${key}/afterEach` +
|
|
309
|
+
// "/" +
|
|
310
|
+
// x.path,
|
|
311
|
+
// },
|
|
312
|
+
// page
|
|
313
|
+
// );
|
|
314
|
+
// // return await pTarget[pProp]({
|
|
315
|
+
// // ...x,
|
|
316
|
+
// // path:
|
|
317
|
+
// // `${testResourceConfiguration.fs}/suite-${suiteNdx}/given-${key}/afterEach` +
|
|
318
|
+
// // "/" +
|
|
319
|
+
// // x.path,
|
|
320
|
+
// // });
|
|
321
|
+
// };
|
|
322
|
+
// } else if (pProp === "mainFrame") {
|
|
323
|
+
// return () => pTarget[pProp]();
|
|
324
|
+
// // return target[pProp];
|
|
325
|
+
// // return Reflect.get(...arguments);
|
|
326
|
+
// } else if (pProp === "exposeFunction") {
|
|
327
|
+
// // return Reflect.get(target, prop, receiver);
|
|
328
|
+
// return (...a) => pTarget[pProp](...a);
|
|
329
|
+
// // return target[pProp];
|
|
330
|
+
// } else if (pProp === "removeExposedFunction") {
|
|
331
|
+
// // return Reflect.get(target, prop, receiver);
|
|
332
|
+
// return pTarget[pProp].bind(pTarget);
|
|
333
|
+
// // return target[pProp];
|
|
334
|
+
// }
|
|
335
|
+
// // else if (pProp === "#frameManager") {
|
|
336
|
+
// // return () => target[pProp](...arguments);
|
|
337
|
+
// // }
|
|
338
|
+
// else {
|
|
339
|
+
// return Reflect.get(...arguments);
|
|
340
|
+
// }
|
|
341
|
+
// },
|
|
342
|
+
// });
|
|
343
|
+
// });
|
|
344
|
+
// });
|
|
345
|
+
// // return (await target.pages()).map((page) => {
|
|
346
|
+
// // return new Proxy(page, handler2);
|
|
347
|
+
// // });
|
|
348
|
+
// };
|
|
349
|
+
// }
|
|
350
|
+
// },
|
|
351
|
+
// });
|
|
352
|
+
// }
|
|
340
353
|
return Reflect.get(...arguments);
|
|
341
354
|
},
|
|
342
355
|
});
|
|
343
|
-
|
|
344
|
-
|
|
356
|
+
await this.afterEach(this.store, key, givenArtifactory,
|
|
357
|
+
// pm
|
|
358
|
+
afterEachProxy);
|
|
345
359
|
}
|
|
346
360
|
catch (e) {
|
|
347
361
|
console.error("afterEach failed! no error will be recorded!", e);
|
|
@@ -361,104 +375,101 @@ export class BaseWhen {
|
|
|
361
375
|
error: this.error,
|
|
362
376
|
};
|
|
363
377
|
}
|
|
364
|
-
async test(store, testResourceConfiguration, tLog, pm,
|
|
378
|
+
async test(store, testResourceConfiguration, tLog, pm, filepath) {
|
|
365
379
|
tLog(" When:", this.name);
|
|
366
380
|
const name = this.name;
|
|
367
381
|
const andWhenProxy = new Proxy(pm, {
|
|
368
|
-
// set(obj, prop, value) {
|
|
369
|
-
// return Reflect.set(...arguments);
|
|
370
|
-
// // if (prop === "eyeCount" && value % 2 !== 0) {
|
|
371
|
-
// // console.log("Monsters must have an even number of eyes");
|
|
372
|
-
// // } else {
|
|
373
|
-
// // return Reflect.set(...arguments);
|
|
374
|
-
// // }
|
|
375
|
-
// },
|
|
376
382
|
get(target, prop, receiver) {
|
|
383
|
+
if (prop === "customScreenShot") {
|
|
384
|
+
return (opts) => target.customScreenShot(Object.assign(Object.assign({}, opts), { path: `${filepath}/${opts.path}` }));
|
|
385
|
+
}
|
|
377
386
|
if (prop === "writeFileSync") {
|
|
378
|
-
return (fp, contents) =>
|
|
379
|
-
// target[prop](`${key}/andWhen/${fp}`, contents);
|
|
380
|
-
target[prop](`${key}/andWhen/${fp}`, contents);
|
|
387
|
+
return (fp, contents) => target[prop](`${filepath}/andWhen/${fp}`, contents);
|
|
381
388
|
}
|
|
382
389
|
/////////////////////
|
|
383
|
-
if (prop === "browser") {
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
}
|
|
390
|
+
// if (prop === "browser") {
|
|
391
|
+
// return new Proxy(target[prop], {
|
|
392
|
+
// get(bTarget, bProp, bReceiver) {
|
|
393
|
+
// if (bProp === "pages") {
|
|
394
|
+
// return async () => {
|
|
395
|
+
// return bTarget.pages().then((pages) => {
|
|
396
|
+
// return pages.map((page) => {
|
|
397
|
+
// return new Proxy(page, {
|
|
398
|
+
// get(pTarget, pProp, pReciever) {
|
|
399
|
+
// // console.log("mark get", pTarget, pProp, pReciever);
|
|
400
|
+
// if (pProp === "screenshot") {
|
|
401
|
+
// return async (x) => {
|
|
402
|
+
// return pm.customScreenShot(
|
|
403
|
+
// {
|
|
404
|
+
// ...x,
|
|
405
|
+
// path:
|
|
406
|
+
// `${testResourceConfiguration.fs}/${key}/afterEach` +
|
|
407
|
+
// "/" +
|
|
408
|
+
// x.path,
|
|
409
|
+
// },
|
|
410
|
+
// page
|
|
411
|
+
// );
|
|
412
|
+
// };
|
|
413
|
+
// } else if (pProp === "mainFrame") {
|
|
414
|
+
// return () => pTarget[pProp]();
|
|
415
|
+
// // return target[pProp];
|
|
416
|
+
// // return Reflect.get(...arguments);
|
|
417
|
+
// } else if (pProp === "exposeFunction") {
|
|
418
|
+
// // return Reflect.get(target, prop, receiver);
|
|
419
|
+
// return pTarget[pProp].bind(pTarget);
|
|
420
|
+
// // return target[pProp];
|
|
421
|
+
// } else if (pProp === "removeExposedFunction") {
|
|
422
|
+
// // return Reflect.get(target, prop, receiver);
|
|
423
|
+
// return pTarget[pProp].bind(pTarget);
|
|
424
|
+
// // return target[pProp];
|
|
425
|
+
// } else if (pProp === "click") {
|
|
426
|
+
// // console.log("mark12", arguments);
|
|
427
|
+
// // return Reflect.get(target, prop, receiver);
|
|
428
|
+
// // return pTarget[pProp].bind(pTarget);
|
|
429
|
+
// // return target[pProp];
|
|
430
|
+
// return (selector, options) => {
|
|
431
|
+
// pTarget[pProp](selector, options);
|
|
432
|
+
// };
|
|
433
|
+
// } else if (pProp === "$eval") {
|
|
434
|
+
// // return pTarget[pProp].bind(pTarget);
|
|
435
|
+
// return (selector, options) => {
|
|
436
|
+
// pTarget[pProp](selector, options);
|
|
437
|
+
// };
|
|
438
|
+
// } else if (pProp === "$") {
|
|
439
|
+
// return Reflect.get(...arguments);
|
|
440
|
+
// // return Reflect.get(target, prop, receiver);
|
|
441
|
+
// // return pTarget[pProp].bind(pTarget);
|
|
442
|
+
// // return target[pProp];
|
|
443
|
+
// // return pTarget[pProp].bind(pTarget);
|
|
444
|
+
// // return async (s) => {
|
|
445
|
+
// // console.log("mark17", s);
|
|
446
|
+
// // console.log("pTarget", pTarget);
|
|
447
|
+
// // console.log("pProp", pProp);
|
|
448
|
+
// // console.log("pReciever", pReciever);
|
|
449
|
+
// // // return "XXX";
|
|
450
|
+
// // // debugger;
|
|
451
|
+
// // return await pTarget[pProp](s);
|
|
452
|
+
// // };
|
|
453
|
+
// } else {
|
|
454
|
+
// return Reflect.get(...arguments);
|
|
455
|
+
// }
|
|
456
|
+
// },
|
|
457
|
+
// });
|
|
458
|
+
// });
|
|
459
|
+
// });
|
|
460
|
+
// // return (await target.pages()).map((page) => {
|
|
461
|
+
// // return new Proxy(page, handler2);
|
|
462
|
+
// // });
|
|
463
|
+
// };
|
|
464
|
+
// }
|
|
465
|
+
// },
|
|
466
|
+
// });
|
|
467
|
+
// }
|
|
457
468
|
///////////////////////
|
|
458
469
|
return Reflect.get(...arguments);
|
|
459
470
|
},
|
|
460
471
|
});
|
|
461
|
-
return this.andWhen(store, this.whenCB, testResourceConfiguration, andWhenProxy).catch((e) => {
|
|
472
|
+
return await this.andWhen(store, this.whenCB, testResourceConfiguration, andWhenProxy).catch((e) => {
|
|
462
473
|
this.error = true;
|
|
463
474
|
// throw e;
|
|
464
475
|
});
|
|
@@ -492,75 +503,72 @@ export class BaseThen {
|
|
|
492
503
|
try {
|
|
493
504
|
const butThenProxy = new Proxy(pm, {
|
|
494
505
|
get(target, prop, receiver) {
|
|
506
|
+
if (prop === "customScreenShot") {
|
|
507
|
+
return (opts) => target.customScreenShot(Object.assign(Object.assign({}, opts), { path: `${filepath}/${opts.path}` }));
|
|
508
|
+
}
|
|
495
509
|
if (prop === "writeFileSync") {
|
|
496
510
|
return (fp, contents) => target[prop](`${filepath}/${fp}`, contents);
|
|
497
511
|
}
|
|
498
|
-
if (prop === "browser") {
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
}
|
|
512
|
+
// if (prop === "browser") {
|
|
513
|
+
// return new Proxy(target[prop], {
|
|
514
|
+
// get(bTarget, bProp, bReceiver) {
|
|
515
|
+
// if (bProp === "pages") {
|
|
516
|
+
// return async () => {
|
|
517
|
+
// return bTarget.pages().then((pages) => {
|
|
518
|
+
// return pages.map((page) => {
|
|
519
|
+
// return new Proxy(page, {
|
|
520
|
+
// get(pTarget, pProp, pReciever) {
|
|
521
|
+
// if (pProp === "screenshot") {
|
|
522
|
+
// return async (x) => {
|
|
523
|
+
// return pm.customScreenShot(
|
|
524
|
+
// {
|
|
525
|
+
// ...x,
|
|
526
|
+
// path:
|
|
527
|
+
// `${testResourceConfiguration.fs}/${filepath}/butThen` +
|
|
528
|
+
// "/" +
|
|
529
|
+
// x.path,
|
|
530
|
+
// },
|
|
531
|
+
// page
|
|
532
|
+
// );
|
|
533
|
+
// // return await window["custom-screenshot"]({
|
|
534
|
+
// // ...x,
|
|
535
|
+
// // path:
|
|
536
|
+
// // `${testResourceConfiguration.fs}/suite-${sNdx}/afterAll` +
|
|
537
|
+
// // "/" +
|
|
538
|
+
// // x.path,
|
|
539
|
+
// // });
|
|
540
|
+
// };
|
|
541
|
+
// } else if (pProp === "close") {
|
|
542
|
+
// return () => pTarget[pProp]();
|
|
543
|
+
// } else if (pProp === "mainFrame") {
|
|
544
|
+
// return () => pTarget[pProp]();
|
|
545
|
+
// } else if (pProp === "exposeFunction") {
|
|
546
|
+
// // return Reflect.get(target, prop, receiver);
|
|
547
|
+
// return (...a) => pTarget[pProp](...a);
|
|
548
|
+
// // return target[pProp];
|
|
549
|
+
// } else if (pProp === "removeExposedFunction") {
|
|
550
|
+
// // return Reflect.get(target, prop, receiver);
|
|
551
|
+
// return pTarget[pProp].bind(pTarget);
|
|
552
|
+
// // return target[pProp];
|
|
553
|
+
// } else {
|
|
554
|
+
// return Reflect.get(...arguments);
|
|
555
|
+
// }
|
|
556
|
+
// },
|
|
557
|
+
// });
|
|
558
|
+
// });
|
|
559
|
+
// });
|
|
560
|
+
// // return (await target.pages()).map((page) => {
|
|
561
|
+
// // return new Proxy(page, handler2);
|
|
562
|
+
// // });
|
|
563
|
+
// };
|
|
564
|
+
// }
|
|
565
|
+
// },
|
|
566
|
+
// });
|
|
567
|
+
// }
|
|
552
568
|
return Reflect.get(...arguments);
|
|
553
569
|
},
|
|
554
570
|
});
|
|
555
|
-
// const x = await this.butThen(
|
|
556
|
-
// store,
|
|
557
|
-
// this.thenCB,
|
|
558
|
-
// testResourceConfiguration,
|
|
559
|
-
// butThenProxy
|
|
560
|
-
// );
|
|
561
|
-
// return x;
|
|
562
571
|
return this.butThen(store, this.thenCB, testResourceConfiguration, butThenProxy).catch((e) => {
|
|
563
|
-
console.log("mar123");
|
|
564
572
|
this.error = true;
|
|
565
573
|
throw e;
|
|
566
574
|
});
|