doc-detective 4.0.0-beta.1-dev.1 → 4.0.0-beta.1-dev.3
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/core/tests/startRecording.d.ts.map +1 -1
- package/dist/core/tests/startRecording.js +37 -4
- package/dist/core/tests/startRecording.js.map +1 -1
- package/dist/core/tests/stopRecording.d.ts.map +1 -1
- package/dist/core/tests/stopRecording.js +17 -0
- package/dist/core/tests/stopRecording.js.map +1 -1
- package/dist/index.cjs +46 -4
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -0
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/common/package-lock.json +2 -2
- package/src/common/package.json +1 -1
- package/src/core/tests/startRecording.ts +39 -5
- package/src/core/tests/stopRecording.ts +21 -0
- package/src/utils.ts +1 -0
- package/test/core-artifacts/recording.spec.json +117 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"startRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,iBAAe,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE,gBA2MrH"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { validate } from "../../common/src/validate.js";
|
|
2
|
+
import { log } from "../utils.js";
|
|
2
3
|
import { instantiateCursor } from "./moveTo.js";
|
|
3
4
|
import path from "node:path";
|
|
4
5
|
import fs from "node:fs";
|
|
@@ -80,7 +81,14 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
80
81
|
await driver.execute(() => (document.title = "RECORDER"));
|
|
81
82
|
config.recording.tab = await driver.getWindowHandle();
|
|
82
83
|
// Start recording
|
|
83
|
-
await driver.
|
|
84
|
+
const recorderStarted = await driver.executeAsync((baseName, done) => {
|
|
85
|
+
let doneCalled = false;
|
|
86
|
+
const safeDone = (value) => {
|
|
87
|
+
if (!doneCalled) {
|
|
88
|
+
doneCalled = true;
|
|
89
|
+
done(value);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
84
92
|
let stream;
|
|
85
93
|
const displayMediaOptions = {
|
|
86
94
|
video: {
|
|
@@ -106,10 +114,18 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
106
114
|
}
|
|
107
115
|
}
|
|
108
116
|
async function captureAndDownload() {
|
|
109
|
-
|
|
110
|
-
|
|
117
|
+
try {
|
|
118
|
+
stream = await startCapture(displayMediaOptions);
|
|
119
|
+
if (!stream) {
|
|
120
|
+
safeDone(false);
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
111
123
|
await recordStream(stream);
|
|
112
124
|
}
|
|
125
|
+
catch (err) {
|
|
126
|
+
console.error(`Error: ${err}`);
|
|
127
|
+
safeDone(false);
|
|
128
|
+
}
|
|
113
129
|
return stream;
|
|
114
130
|
}
|
|
115
131
|
async function recordStream(stream) {
|
|
@@ -117,7 +133,8 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
117
133
|
const data = [];
|
|
118
134
|
window.recorder.ondataavailable = (event) => data.push(event.data);
|
|
119
135
|
window.recorder.start();
|
|
120
|
-
|
|
136
|
+
safeDone(true);
|
|
137
|
+
let stopped = new Promise((resolve, reject) => {
|
|
121
138
|
window.recorder.onstop = resolve;
|
|
122
139
|
window.recorder.onerror = (event) => reject(event.name);
|
|
123
140
|
});
|
|
@@ -137,6 +154,22 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
137
154
|
}
|
|
138
155
|
captureAndDownload();
|
|
139
156
|
}, baseName);
|
|
157
|
+
// Handle recording failure
|
|
158
|
+
if (!recorderStarted) {
|
|
159
|
+
config.recording = null;
|
|
160
|
+
result.status = "FAIL";
|
|
161
|
+
result.description =
|
|
162
|
+
"Failed to start recording. getDisplayMedia may have been rejected. " +
|
|
163
|
+
"On macOS, ensure Chrome has screen recording permission in " +
|
|
164
|
+
"System Preferences > Privacy & Security > Screen Recording.";
|
|
165
|
+
log(config, "error", result.description);
|
|
166
|
+
await driver.closeWindow();
|
|
167
|
+
await driver.switchToWindow(originalTab);
|
|
168
|
+
await driver.execute((documentTitle) => {
|
|
169
|
+
document.title = documentTitle;
|
|
170
|
+
}, documentTitle);
|
|
171
|
+
return result;
|
|
172
|
+
}
|
|
140
173
|
// Switch to original tab
|
|
141
174
|
await driver.switchToWindow(originalTab);
|
|
142
175
|
// Set document title back to original
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startRecording.js","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"startRecording.js","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stopRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,iBAAe,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"stopRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,iBAAe,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE,gBAmH7F"}
|
|
@@ -31,6 +31,23 @@ async function stopRecording({ config, step, driver }) {
|
|
|
31
31
|
// MediaRecorder
|
|
32
32
|
// Switch to recording tab
|
|
33
33
|
await driver.switchToWindow(config.recording.tab);
|
|
34
|
+
// Check that recorder was properly initialized
|
|
35
|
+
const recorderExists = await driver.execute(() => {
|
|
36
|
+
return typeof window.recorder !== "undefined" && window.recorder !== null;
|
|
37
|
+
});
|
|
38
|
+
if (!recorderExists) {
|
|
39
|
+
result.status = "FAIL";
|
|
40
|
+
result.description =
|
|
41
|
+
"Recording was not properly started. The recorder object doesn't exist in the browser context.";
|
|
42
|
+
const allHandles = await driver.getWindowHandles();
|
|
43
|
+
await driver.closeWindow();
|
|
44
|
+
const remainingHandles = allHandles.filter((h) => h !== config.recording.tab);
|
|
45
|
+
if (remainingHandles.length > 0) {
|
|
46
|
+
await driver.switchToWindow(remainingHandles[0]);
|
|
47
|
+
}
|
|
48
|
+
config.recording = null;
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
34
51
|
// Stop recording
|
|
35
52
|
await driver.execute(() => {
|
|
36
53
|
window.recorder.stop();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stopRecording.js","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,KAAK,UAAU,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAA2C;IAC5F,IAAI,MAAM,GAAQ;QAChB,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,oBAAoB;KAClC,CAAC;IAEF,wBAAwB;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,4BAA4B,WAAW,CAAC,MAAM,EAAE,CAAC;QACtE,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,sCAAsC;IACtC,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC;IAE1B,mCAAmC;IACnC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,0BAA0B,CAAC;QAChD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YAC9C,gBAAgB;YAEhB,0BAA0B;YAC1B,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"stopRecording.js","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,KAAK,UAAU,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAA2C;IAC5F,IAAI,MAAM,GAAQ;QAChB,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,oBAAoB;KAClC,CAAC;IAEF,wBAAwB;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,4BAA4B,WAAW,CAAC,MAAM,EAAE,CAAC;QACtE,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,sCAAsC;IACtC,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC;IAE1B,mCAAmC;IACnC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,0BAA0B,CAAC;QAChD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YAC9C,gBAAgB;YAEhB,0BAA0B;YAC1B,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAElD,+CAA+C;YAC/C,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/C,OAAO,OAAQ,MAAc,CAAC,QAAQ,KAAK,WAAW,IAAK,MAAc,CAAC,QAAQ,KAAK,IAAI,CAAC;YAC9F,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,WAAW;oBAChB,+FAA+F,CAAC;gBAClG,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBACnD,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CACxC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAC1C,CAAC;gBACF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC;gBACD,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;gBACxB,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,iBAAiB;YACjB,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;gBACvB,MAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,CAAC,CAAC,CAAC;YACH,uCAAuC;YACvC,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;gBACvE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC9C,SAAS,EAAE,CAAC;YACd,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,WAAW,GAAG,+BAA+B,CAAC;gBACrD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,kEAAkE;YAClE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACnD,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CACxC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAC1C,CAAC;YACF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;YAED,mDAAmD;YACnD,MAAM,UAAU,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YACxD,MAAM,UAAU,GAAG,6BAA6B,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC9E,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC;YACtD,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5B,iDAAiD;YACjD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;qBAC7B,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBACpB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBACf,+DAA+D;wBAC/D,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;4BAChC,IAAI,CAAC;gCAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;4BAAC,CAAC;4BAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBAC7D,CAAC;wBACD,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;wBACjC,OAAO,EAAE,CAAC;oBACZ,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC,CAAC;qBACD,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,SAAS;YACT,qCAAqC;QACvC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0BAA0B;QAC1B,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,4BAA4B,KAAK,EAAE,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO;IACP,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/index.cjs
CHANGED
|
@@ -125661,7 +125661,14 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
125661
125661
|
await driver.url("chrome://new-tab-page");
|
|
125662
125662
|
await driver.execute(() => document.title = "RECORDER");
|
|
125663
125663
|
config.recording.tab = await driver.getWindowHandle();
|
|
125664
|
-
await driver.
|
|
125664
|
+
const recorderStarted = await driver.executeAsync((baseName2, done) => {
|
|
125665
|
+
let doneCalled = false;
|
|
125666
|
+
const safeDone = (value) => {
|
|
125667
|
+
if (!doneCalled) {
|
|
125668
|
+
doneCalled = true;
|
|
125669
|
+
done(value);
|
|
125670
|
+
}
|
|
125671
|
+
};
|
|
125665
125672
|
let stream;
|
|
125666
125673
|
const displayMediaOptions = {
|
|
125667
125674
|
video: {
|
|
@@ -125686,9 +125693,16 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
125686
125693
|
}
|
|
125687
125694
|
}
|
|
125688
125695
|
async function captureAndDownload() {
|
|
125689
|
-
|
|
125690
|
-
|
|
125696
|
+
try {
|
|
125697
|
+
stream = await startCapture(displayMediaOptions);
|
|
125698
|
+
if (!stream) {
|
|
125699
|
+
safeDone(false);
|
|
125700
|
+
return null;
|
|
125701
|
+
}
|
|
125691
125702
|
await recordStream(stream);
|
|
125703
|
+
} catch (err) {
|
|
125704
|
+
console.error(`Error: ${err}`);
|
|
125705
|
+
safeDone(false);
|
|
125692
125706
|
}
|
|
125693
125707
|
return stream;
|
|
125694
125708
|
}
|
|
@@ -125697,7 +125711,8 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
125697
125711
|
const data = [];
|
|
125698
125712
|
window.recorder.ondataavailable = (event) => data.push(event.data);
|
|
125699
125713
|
window.recorder.start();
|
|
125700
|
-
|
|
125714
|
+
safeDone(true);
|
|
125715
|
+
let stopped = new Promise((resolve, reject) => {
|
|
125701
125716
|
window.recorder.onstop = resolve;
|
|
125702
125717
|
window.recorder.onerror = (event) => reject(event.name);
|
|
125703
125718
|
});
|
|
@@ -125717,6 +125732,18 @@ async function startRecording({ config, context, step, driver }) {
|
|
|
125717
125732
|
}
|
|
125718
125733
|
captureAndDownload();
|
|
125719
125734
|
}, baseName);
|
|
125735
|
+
if (!recorderStarted) {
|
|
125736
|
+
config.recording = null;
|
|
125737
|
+
result.status = "FAIL";
|
|
125738
|
+
result.description = "Failed to start recording. getDisplayMedia may have been rejected. On macOS, ensure Chrome has screen recording permission in System Preferences > Privacy & Security > Screen Recording.";
|
|
125739
|
+
log(config, "error", result.description);
|
|
125740
|
+
await driver.closeWindow();
|
|
125741
|
+
await driver.switchToWindow(originalTab);
|
|
125742
|
+
await driver.execute((documentTitle2) => {
|
|
125743
|
+
document.title = documentTitle2;
|
|
125744
|
+
}, documentTitle);
|
|
125745
|
+
return result;
|
|
125746
|
+
}
|
|
125720
125747
|
await driver.switchToWindow(originalTab);
|
|
125721
125748
|
await driver.execute((documentTitle2) => {
|
|
125722
125749
|
document.title = documentTitle2;
|
|
@@ -125763,6 +125790,21 @@ async function stopRecording({ config, step, driver }) {
|
|
|
125763
125790
|
try {
|
|
125764
125791
|
if (config.recording.type === "MediaRecorder") {
|
|
125765
125792
|
await driver.switchToWindow(config.recording.tab);
|
|
125793
|
+
const recorderExists = await driver.execute(() => {
|
|
125794
|
+
return typeof window.recorder !== "undefined" && window.recorder !== null;
|
|
125795
|
+
});
|
|
125796
|
+
if (!recorderExists) {
|
|
125797
|
+
result.status = "FAIL";
|
|
125798
|
+
result.description = "Recording was not properly started. The recorder object doesn't exist in the browser context.";
|
|
125799
|
+
const allHandles2 = await driver.getWindowHandles();
|
|
125800
|
+
await driver.closeWindow();
|
|
125801
|
+
const remainingHandles2 = allHandles2.filter((h) => h !== config.recording.tab);
|
|
125802
|
+
if (remainingHandles2.length > 0) {
|
|
125803
|
+
await driver.switchToWindow(remainingHandles2[0]);
|
|
125804
|
+
}
|
|
125805
|
+
config.recording = null;
|
|
125806
|
+
return result;
|
|
125807
|
+
}
|
|
125766
125808
|
await driver.execute(() => {
|
|
125767
125809
|
window.recorder.stop();
|
|
125768
125810
|
});
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,OAAO,EACP,SAAS,EACT,aAAa,EACb,YAAY,EACZ,OAAO,EACP,cAAc,EACd,GAAG,EACH,uBAAuB,EACvB,aAAa,EACb,SAAS,EACT,gBAAgB,GACjB,CAAC;AAGF,iBAAS,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,MAAe,EAAE,MAAM,GAAE,GAAQ,QAclE;AAGD,iBAAS,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,OAAO,EACP,SAAS,EACT,aAAa,EACb,YAAY,EACZ,OAAO,EACP,cAAc,EACd,GAAG,EACH,uBAAuB,EACvB,aAAa,EACb,SAAS,EACT,gBAAgB,GACjB,CAAC;AAGF,iBAAS,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,MAAe,EAAE,MAAM,GAAE,GAAQ,QAclE;AAGD,iBAAS,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAmC/B;AAGD,iBAAe,uBAAuB,CAAC,MAAM,GAAE,GAAQ;;;UAyEtD;AAqCD,iBAAe,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;IAAE,UAAU,CAAC,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,gBAqF7E;AAGD,QAAA,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAubzG,CAAC;AAGF,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,WAM5D;AAED,iBAAe,aAAa,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,iBA8DpF;AAED,iBAAe,aAAa,CAAC,MAAM,EAAE,GAAG,YAAK,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAE,GAAQ,kBAgD9F;AAGD,iBAAe,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE;;;;GAwCvD;AAED,iBAAS,OAAO,SAuBf;AAGD,iBAAS,cAAc,QA+GtB"}
|
package/dist/utils.js
CHANGED
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "doc-detective-common",
|
|
3
|
-
"version": "4.0.0-beta.0-dev.
|
|
3
|
+
"version": "4.0.0-beta.0-dev.4",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "doc-detective-common",
|
|
9
|
-
"version": "4.0.0-beta.0-dev.
|
|
9
|
+
"version": "4.0.0-beta.0-dev.4",
|
|
10
10
|
"license": "AGPL-3.0-only",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"ajv": "^8.17.1",
|
package/src/common/package.json
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { validate } from "../../common/src/validate.js";
|
|
2
|
+
import { log } from "../utils.js";
|
|
2
3
|
import { instantiateCursor } from "./moveTo.js";
|
|
3
4
|
import path from "node:path";
|
|
4
5
|
import fs from "node:fs";
|
|
@@ -92,8 +93,15 @@ async function startRecording({ config, context, step, driver }: { config: any;
|
|
|
92
93
|
config.recording.tab = await driver.getWindowHandle();
|
|
93
94
|
|
|
94
95
|
// Start recording
|
|
95
|
-
await driver.
|
|
96
|
-
let
|
|
96
|
+
const recorderStarted = await driver.executeAsync((baseName: any, done: any) => {
|
|
97
|
+
let doneCalled = false;
|
|
98
|
+
const safeDone = (value: boolean) => {
|
|
99
|
+
if (!doneCalled) {
|
|
100
|
+
doneCalled = true;
|
|
101
|
+
done(value);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
let stream: any;
|
|
97
105
|
const displayMediaOptions = {
|
|
98
106
|
video: {
|
|
99
107
|
displaySurface: "browser",
|
|
@@ -119,9 +127,16 @@ async function startRecording({ config, context, step, driver }: { config: any;
|
|
|
119
127
|
}
|
|
120
128
|
}
|
|
121
129
|
async function captureAndDownload() {
|
|
122
|
-
|
|
123
|
-
|
|
130
|
+
try {
|
|
131
|
+
stream = await startCapture(displayMediaOptions);
|
|
132
|
+
if (!stream) {
|
|
133
|
+
safeDone(false);
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
124
136
|
await recordStream(stream);
|
|
137
|
+
} catch (err) {
|
|
138
|
+
console.error(`Error: ${err}`);
|
|
139
|
+
safeDone(false);
|
|
125
140
|
}
|
|
126
141
|
return stream;
|
|
127
142
|
}
|
|
@@ -131,8 +146,9 @@ async function startRecording({ config, context, step, driver }: { config: any;
|
|
|
131
146
|
|
|
132
147
|
(window as any).recorder.ondataavailable = (event: any) => data.push(event.data);
|
|
133
148
|
(window as any).recorder.start();
|
|
149
|
+
safeDone(true);
|
|
134
150
|
|
|
135
|
-
|
|
151
|
+
let stopped = new Promise((resolve, reject) => {
|
|
136
152
|
(window as any).recorder.onstop = resolve;
|
|
137
153
|
(window as any).recorder.onerror = (event: any) => reject(event.name);
|
|
138
154
|
});
|
|
@@ -154,6 +170,24 @@ async function startRecording({ config, context, step, driver }: { config: any;
|
|
|
154
170
|
}
|
|
155
171
|
captureAndDownload();
|
|
156
172
|
}, baseName);
|
|
173
|
+
|
|
174
|
+
// Handle recording failure
|
|
175
|
+
if (!recorderStarted) {
|
|
176
|
+
config.recording = null;
|
|
177
|
+
result.status = "FAIL";
|
|
178
|
+
result.description =
|
|
179
|
+
"Failed to start recording. getDisplayMedia may have been rejected. " +
|
|
180
|
+
"On macOS, ensure Chrome has screen recording permission in " +
|
|
181
|
+
"System Preferences > Privacy & Security > Screen Recording.";
|
|
182
|
+
log(config, "error", result.description);
|
|
183
|
+
await driver.closeWindow();
|
|
184
|
+
await driver.switchToWindow(originalTab);
|
|
185
|
+
await driver.execute((documentTitle: any) => {
|
|
186
|
+
document.title = documentTitle;
|
|
187
|
+
}, documentTitle);
|
|
188
|
+
return result;
|
|
189
|
+
}
|
|
190
|
+
|
|
157
191
|
// Switch to original tab
|
|
158
192
|
await driver.switchToWindow(originalTab);
|
|
159
193
|
// Set document title back to original
|
|
@@ -37,6 +37,27 @@ async function stopRecording({ config, step, driver }: { config: any; step: any;
|
|
|
37
37
|
|
|
38
38
|
// Switch to recording tab
|
|
39
39
|
await driver.switchToWindow(config.recording.tab);
|
|
40
|
+
|
|
41
|
+
// Check that recorder was properly initialized
|
|
42
|
+
const recorderExists = await driver.execute(() => {
|
|
43
|
+
return typeof (window as any).recorder !== "undefined" && (window as any).recorder !== null;
|
|
44
|
+
});
|
|
45
|
+
if (!recorderExists) {
|
|
46
|
+
result.status = "FAIL";
|
|
47
|
+
result.description =
|
|
48
|
+
"Recording was not properly started. The recorder object doesn't exist in the browser context.";
|
|
49
|
+
const allHandles = await driver.getWindowHandles();
|
|
50
|
+
await driver.closeWindow();
|
|
51
|
+
const remainingHandles = allHandles.filter(
|
|
52
|
+
(h: string) => h !== config.recording.tab
|
|
53
|
+
);
|
|
54
|
+
if (remainingHandles.length > 0) {
|
|
55
|
+
await driver.switchToWindow(remainingHandles[0]);
|
|
56
|
+
}
|
|
57
|
+
config.recording = null;
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
|
|
40
61
|
// Stop recording
|
|
41
62
|
await driver.execute(() => {
|
|
42
63
|
(window as any).recorder.stop();
|
package/src/utils.ts
CHANGED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
{
|
|
2
|
+
"specId": "recording",
|
|
3
|
+
"description": "Tests for screen recording start/stop lifecycle. Non-headless tests require Chrome with screen recording permissions and only run on Windows and macOS. Headless tests verify skip/guard behavior on all platforms.",
|
|
4
|
+
"tests": [
|
|
5
|
+
{
|
|
6
|
+
"testId": "recording-basic",
|
|
7
|
+
"description": "Start and stop a basic recording.",
|
|
8
|
+
"runOn": [
|
|
9
|
+
{
|
|
10
|
+
"platforms": ["windows", "mac"],
|
|
11
|
+
"browsers": {
|
|
12
|
+
"name": "chrome",
|
|
13
|
+
"headless": false
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"steps": [
|
|
18
|
+
{
|
|
19
|
+
"goTo": "http://localhost:8092"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"record": {
|
|
23
|
+
"path": "recording-basic.webm",
|
|
24
|
+
"overwrite": "true"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"find": {
|
|
29
|
+
"selector": "body",
|
|
30
|
+
"timeout": 5000
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"stopRecord": true
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"testId": "recording-mp4",
|
|
40
|
+
"description": "Start and stop recording with mp4 output.",
|
|
41
|
+
"runOn": [
|
|
42
|
+
{
|
|
43
|
+
"platforms": ["windows", "mac"],
|
|
44
|
+
"browsers": {
|
|
45
|
+
"name": "chrome",
|
|
46
|
+
"headless": false
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"steps": [
|
|
51
|
+
{
|
|
52
|
+
"goTo": "http://localhost:8092"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"record": {
|
|
56
|
+
"path": "recording-mp4.mp4",
|
|
57
|
+
"overwrite": "true"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"find": {
|
|
62
|
+
"selector": "body",
|
|
63
|
+
"timeout": 5000
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"stopRecord": true
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"testId": "recording-headless-skipped",
|
|
73
|
+
"description": "Recording should be skipped in headless mode.",
|
|
74
|
+
"runOn": [
|
|
75
|
+
{
|
|
76
|
+
"platforms": ["windows", "mac", "linux"],
|
|
77
|
+
"browsers": {
|
|
78
|
+
"name": "chrome",
|
|
79
|
+
"headless": true
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
"steps": [
|
|
84
|
+
{
|
|
85
|
+
"goTo": "http://localhost:8092"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"record": true
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"stopRecord": true
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"testId": "recording-stop-without-start",
|
|
97
|
+
"description": "Stopping a recording that was never started should be skipped.",
|
|
98
|
+
"runOn": [
|
|
99
|
+
{
|
|
100
|
+
"platforms": ["windows", "mac", "linux"],
|
|
101
|
+
"browsers": {
|
|
102
|
+
"name": "chrome",
|
|
103
|
+
"headless": true
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
],
|
|
107
|
+
"steps": [
|
|
108
|
+
{
|
|
109
|
+
"goTo": "http://localhost:8092"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"stopRecord": true
|
|
113
|
+
}
|
|
114
|
+
]
|
|
115
|
+
}
|
|
116
|
+
]
|
|
117
|
+
}
|