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