appium-novawindows2-driver 0.2.11 → 0.2.13
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/build/lib/commands/app.d.ts.map +1 -1
- package/build/lib/commands/app.js +33 -15
- package/build/lib/commands/app.js.map +1 -1
- package/build/lib/commands/extension.d.ts +2 -0
- package/build/lib/commands/extension.d.ts.map +1 -1
- package/build/lib/commands/extension.js +35 -61
- package/build/lib/commands/extension.js.map +1 -1
- package/build/lib/commands/functions.d.ts.map +1 -1
- package/build/lib/commands/functions.js +19 -15
- package/build/lib/commands/functions.js.map +1 -1
- package/build/lib/commands/index.d.ts +6 -5
- package/build/lib/commands/index.d.ts.map +1 -1
- package/build/lib/commands/powershell.d.ts +8 -2
- package/build/lib/commands/powershell.d.ts.map +1 -1
- package/build/lib/commands/powershell.js +226 -250
- package/build/lib/commands/powershell.js.map +1 -1
- package/build/lib/powershell/elements.d.ts +14 -14
- package/build/lib/powershell/elements.d.ts.map +1 -1
- package/build/lib/powershell/elements.js +278 -225
- package/build/lib/powershell/elements.js.map +1 -1
- package/build/lib/powershell/msaa.d.ts +1 -9
- package/build/lib/powershell/msaa.d.ts.map +1 -1
- package/build/lib/powershell/msaa.js +141 -200
- package/build/lib/powershell/msaa.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -3
|
@@ -1,296 +1,272 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.startPowerShellSession = startPowerShellSession;
|
|
4
|
-
exports.sendIsolatedPowerShellCommand = sendIsolatedPowerShellCommand;
|
|
5
3
|
exports.sendPowerShellCommand = sendPowerShellCommand;
|
|
4
|
+
exports.sendIsolatedPowerShellCommand = sendIsolatedPowerShellCommand;
|
|
5
|
+
exports.startPowerShellSession = startPowerShellSession;
|
|
6
6
|
exports.terminatePowerShellSession = terminatePowerShellSession;
|
|
7
7
|
const node_child_process_1 = require("node:child_process");
|
|
8
8
|
const base_driver_1 = require("@appium/base-driver");
|
|
9
9
|
const functions_1 = require("./functions");
|
|
10
|
-
|
|
10
|
+
const msaa_1 = require("../powershell/msaa");
|
|
11
11
|
const SET_UTF8_ENCODING = /* ps1 */ `$OutputEncoding = [Console]::OutputEncoding = [Text.Encoding]::UTF8`;
|
|
12
|
-
const ADD_NECESSARY_ASSEMBLIES = /* ps1 */ `Add-Type -AssemblyName UIAutomationClient; Add-Type -AssemblyName UIAutomationTypes; Add-Type -AssemblyName UIAutomationClientsideProviders; Add-Type -AssemblyName System.Drawing; Add-Type -AssemblyName PresentationCore; Add-Type -AssemblyName System.Windows.Forms`;
|
|
12
|
+
// const ADD_NECESSARY_ASSEMBLIES = /* ps1 */ `Add-Type -AssemblyName UIAutomationClient; Add-Type -AssemblyName UIAutomationTypes; Add-Type -AssemblyName UIAutomationClientsideProviders; Add-Type -AssemblyName System.Drawing; Add-Type -AssemblyName PresentationCore; Add-Type -AssemblyName System.Windows.Forms`;
|
|
13
|
+
const ADD_NECESSARY_ASSEMBLIES = /* ps1 */ `
|
|
14
|
+
Add-Type -AssemblyName UIAutomationClient
|
|
15
|
+
#Add-Type -AssemblyName UIAutomationTypes
|
|
16
|
+
Add-Type -AssemblyName System.Drawing
|
|
17
|
+
Add-Type -AssemblyName PresentationCore
|
|
18
|
+
Add-Type -AssemblyName System.Windows.Forms
|
|
19
|
+
`;
|
|
13
20
|
const USE_UI_AUTOMATION_CLIENT = /* ps1 */ `using namespace System.Windows.Automation`;
|
|
14
21
|
const INIT_CACHE_REQUEST = /* ps1 */ `($cacheRequest = New-Object System.Windows.Automation.CacheRequest).TreeFilter = [AndCondition]::new([Automation]::ControlViewCondition, [NotCondition]::new([PropertyCondition]::new([AutomationElement]::FrameworkIdProperty, 'Chrome'))); $cacheRequest.Push()`;
|
|
15
|
-
// const INIT_CACHE_REQUEST = /* ps1 */ `
|
|
16
|
-
// ($cacheRequest = New-Object System.Windows.Automation.CacheRequest).TreeFilter = [AndCondition]::new([Automation]::ControlViewCondition, [NotCondition]::new([PropertyCondition]::new([AutomationElement]::FrameworkIdProperty, 'Chrome')));
|
|
17
|
-
// $cacheRequest.Add([AutomationElement]::NameProperty);
|
|
18
|
-
// $cacheRequest.Add([AutomationElement]::AutomationIdProperty);
|
|
19
|
-
// $cacheRequest.Add([AutomationElement]::BoundingRectangleProperty);
|
|
20
|
-
// $cacheRequest.Add([AutomationElement]::RuntimeIdProperty);
|
|
21
|
-
// $cacheRequest.Push()
|
|
22
|
-
// `;
|
|
23
22
|
const INIT_ROOT_ELEMENT = /* ps1 */ `$rootElement = [AutomationElement]::RootElement`;
|
|
24
23
|
const NULL_ROOT_ELEMENT = /* ps1 */ `$rootElement = $null`;
|
|
25
24
|
const INIT_ELEMENT_TABLE = /* ps1 */ `$elementTable = New-Object System.Collections.Generic.Dictionary[[string]\`,[AutomationElement]]`;
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
const envVars = Array.from(envVarsSet);
|
|
46
|
-
for (const envVar of envVars) {
|
|
47
|
-
this.caps.appWorkingDir = this.caps.appWorkingDir.replaceAll(`%${envVar}%`, process.env[envVar.toUpperCase()] ?? '');
|
|
48
|
-
}
|
|
25
|
+
const COMMAND_END_MARKER = 0xF2EE;
|
|
26
|
+
const COMMAND_END_CHAR = String.fromCharCode(COMMAND_END_MARKER);
|
|
27
|
+
// ============================================================================
|
|
28
|
+
// Helper Functions
|
|
29
|
+
// ============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Expands Windows environment variables (%VAR%) in a string
|
|
32
|
+
*/
|
|
33
|
+
function expandEnvironmentVariables(input, log) {
|
|
34
|
+
const matches = Array.from(input.matchAll(/%([^%]+)%/g));
|
|
35
|
+
if (matches.length === 0)
|
|
36
|
+
return input;
|
|
37
|
+
const envVars = [...new Set(matches.map(m => m[1]))];
|
|
38
|
+
log.info(`Expanding environment variables: ${envVars.map(v => `%${v}%`).join(', ')}`);
|
|
39
|
+
let result = input;
|
|
40
|
+
for (const envVar of envVars) {
|
|
41
|
+
const value = process.env[envVar.toUpperCase()] ?? '';
|
|
42
|
+
result = result.replaceAll(`%${envVar}%`, value);
|
|
49
43
|
}
|
|
50
|
-
|
|
51
|
-
let initScript = `${USE_UI_AUTOMATION_CLIENT}\n`;
|
|
52
|
-
initScript += `${SET_UTF8_ENCODING};\n`;
|
|
53
|
-
initScript += `${ADD_NECESSARY_ASSEMBLIES};\n`;
|
|
54
|
-
if (this.caps.appWorkingDir) {
|
|
55
|
-
initScript += `Set-Location -Path '${this.caps.appWorkingDir}';\n`;
|
|
56
|
-
}
|
|
57
|
-
initScript += `${INIT_CACHE_REQUEST};\n`;
|
|
58
|
-
initScript += `${INIT_ELEMENT_TABLE};\n`;
|
|
59
|
-
// initScript += `${getMsaaHelperCode(compilationResult)};\n`;
|
|
60
|
-
initScript += `${functions_1.PAGE_SOURCE};\n`;
|
|
61
|
-
initScript += `${functions_1.GET_LEGACY_PROPERTY_SAFE};\n`;
|
|
62
|
-
initScript += `${functions_1.FIND_CHILDREN_RECURSIVELY};\n`;
|
|
63
|
-
initScript += `${DISABLE_QUICK_EDIT};\n`;
|
|
64
|
-
if ((!this.caps.app && !this.caps.appTopLevelWindow) || (!this.caps.app || this.caps.app.toLowerCase() === 'none')) {
|
|
65
|
-
this.log.info(`No app or top-level window specified in capabilities. Setting root element to null.`);
|
|
66
|
-
initScript += `${NULL_ROOT_ELEMENT};\n`;
|
|
67
|
-
}
|
|
68
|
-
else if (this.caps.app && this.caps.app.toLowerCase() === 'root') {
|
|
69
|
-
this.log.info(`'root' specified as app in capabilities. Setting root element to desktop root.`);
|
|
70
|
-
initScript += `${INIT_ROOT_ELEMENT};\n`;
|
|
71
|
-
}
|
|
72
|
-
await executeRawCommand(this, initScript);
|
|
73
|
-
if (this.caps.app && this.caps.app.toLowerCase() !== 'none' && this.caps.app.toLowerCase() !== 'root') {
|
|
74
|
-
this.log.info(`Application path specified in capabilities: ${this.caps.app}`);
|
|
75
|
-
const envVarsSet = new Set();
|
|
76
|
-
const matches = this.caps.app.matchAll(/%([^%]+)%/g);
|
|
77
|
-
for (const match of matches) {
|
|
78
|
-
envVarsSet.add(match[1]);
|
|
79
|
-
}
|
|
80
|
-
const envVars = Array.from(envVarsSet);
|
|
81
|
-
this.log.info(`Detected the following environment variables in app path: ${envVars.map((envVar) => `%${envVar}%`).join(', ')}`);
|
|
82
|
-
for (const envVar of envVars) {
|
|
83
|
-
this.caps.app = this.caps.app.replaceAll(`%${envVar}%`, process.env[envVar.toUpperCase()] ?? '');
|
|
84
|
-
}
|
|
85
|
-
await this.changeRootElement(this.caps.app);
|
|
86
|
-
}
|
|
87
|
-
if (this.caps.appTopLevelWindow) {
|
|
88
|
-
const nativeWindowHandle = Number(this.caps.appTopLevelWindow);
|
|
89
|
-
if (isNaN(nativeWindowHandle)) {
|
|
90
|
-
throw new base_driver_1.errors.InvalidArgumentError(`Invalid capabilities. Capability 'appTopLevelWindow' is not a valid native window handle.`);
|
|
91
|
-
}
|
|
92
|
-
await this.changeRootElement(nativeWindowHandle);
|
|
93
|
-
}
|
|
94
|
-
this.log.debug(`PowerShell session initialization completed`);
|
|
44
|
+
return result;
|
|
95
45
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
output.stdout += chunk.toString();
|
|
104
|
-
});
|
|
105
|
-
powerShell.stderr.on('data', (chunk) => {
|
|
106
|
-
output.stderr += chunk.toString();
|
|
107
|
-
});
|
|
108
|
-
let fullCommand = `${SET_UTF8_ENCODING}\n`;
|
|
109
|
-
if (this.caps.appWorkingDir) {
|
|
110
|
-
const envVarsSet = new Set();
|
|
111
|
-
const matches = this.caps.appWorkingDir.matchAll(/%([^%]+)%/g);
|
|
112
|
-
for (const match of matches) {
|
|
113
|
-
envVarsSet.add(match[1]);
|
|
114
|
-
}
|
|
115
|
-
const envVars = Array.from(envVarsSet);
|
|
116
|
-
for (const envVar of envVars) {
|
|
117
|
-
this.caps.appWorkingDir = this.caps.appWorkingDir.replaceAll(`%${envVar}%`, process.env[envVar.toUpperCase()] ?? '');
|
|
118
|
-
}
|
|
119
|
-
fullCommand += `Set-Location -Path '${this.caps.appWorkingDir}'\n`;
|
|
120
|
-
}
|
|
121
|
-
fullCommand += command;
|
|
122
|
-
return await executeIsolatedRawCommand(this, fullCommand, powerShell, output);
|
|
46
|
+
/**
|
|
47
|
+
* Checks if PowerShell session is ready
|
|
48
|
+
*/
|
|
49
|
+
function ensureSessionReady(driver) {
|
|
50
|
+
const ps = driver.powerShell;
|
|
51
|
+
if (!ps || ps.exitCode !== null || !ps.stdin.writable) {
|
|
52
|
+
throw new base_driver_1.errors.UnknownError('PowerShell session is not available or closed');
|
|
123
53
|
}
|
|
124
|
-
finally {
|
|
125
|
-
// Ensure the isolated PowerShell process is terminated
|
|
126
|
-
try {
|
|
127
|
-
powerShell.kill();
|
|
128
|
-
}
|
|
129
|
-
catch (e) {
|
|
130
|
-
this.log.warn(`Failed to terminate isolated PowerShell process: ${e}`);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
async function sendPowerShellCommand(command) {
|
|
135
|
-
const nextCommand = async () => {
|
|
136
|
-
if (!this.powerShell) {
|
|
137
|
-
this.log.warn('PowerShell session not running. It was either closed or has crashed. Attempting to start a new session...');
|
|
138
|
-
await this.startPowerShellSession();
|
|
139
|
-
}
|
|
140
|
-
// Use the extracted raw command function
|
|
141
|
-
return await executeRawCommand(this, command);
|
|
142
|
-
};
|
|
143
|
-
// Chain the command to the queue
|
|
144
|
-
// Use .catch to ignore previous failures, then .then to queue this command.
|
|
145
|
-
// This prevents re-running this command if it fails (no infinite loop).
|
|
146
|
-
this.commandQueue = this.commandQueue
|
|
147
|
-
.catch(() => { })
|
|
148
|
-
.then(nextCommand)
|
|
149
|
-
.catch((err) => {
|
|
150
|
-
this.log.debug(`PowerShell command failed: ${command}\nError: ${err.message}`);
|
|
151
|
-
throw err;
|
|
152
|
-
});
|
|
153
|
-
return this.commandQueue;
|
|
154
|
-
}
|
|
155
|
-
async function terminatePowerShellSession() {
|
|
156
|
-
const terminateAction = async () => {
|
|
157
|
-
if (!this.powerShell) {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
if (this.powerShell.exitCode !== null) {
|
|
161
|
-
this.log.debug(`PowerShell session already terminated.`);
|
|
162
|
-
this.powerShell = undefined;
|
|
163
|
-
return;
|
|
164
|
-
}
|
|
165
|
-
this.log.debug(`Terminating PowerShell session...`);
|
|
166
|
-
const waitForClose = new Promise((resolve) => {
|
|
167
|
-
this.powerShell?.once('close', () => {
|
|
168
|
-
resolve();
|
|
169
|
-
});
|
|
170
|
-
setTimeout(resolve, 5000); // Safety timeout
|
|
171
|
-
});
|
|
172
|
-
this.powerShell.kill();
|
|
173
|
-
await waitForClose;
|
|
174
|
-
this.powerShell = undefined;
|
|
175
|
-
this.log.debug(`PowerShell session terminated successfully.`);
|
|
176
|
-
};
|
|
177
|
-
this.commandQueue = this.commandQueue
|
|
178
|
-
.catch(() => { })
|
|
179
|
-
.then(terminateAction);
|
|
180
|
-
return await this.commandQueue;
|
|
181
54
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
}
|
|
189
|
-
driver.powerShellStdOut = '';
|
|
190
|
-
driver.powerShellStdErr = '';
|
|
191
|
-
try {
|
|
192
|
-
powerShell.stdin.write(`${command}\n`);
|
|
193
|
-
powerShell.stdin.write(/* ps1 */ `Write-Output $([char]0x${magicNumber.toString(16)})\n`);
|
|
194
|
-
}
|
|
195
|
-
catch (e) {
|
|
196
|
-
throw new base_driver_1.errors.UnknownError(`Failed to write to PowerShell: ${e.message}`);
|
|
197
|
-
}
|
|
198
|
-
return await new Promise((resolve, reject) => {
|
|
199
|
-
const timeoutMs = driver.caps.powerShellCommandTimeout || 60000;
|
|
55
|
+
/**
|
|
56
|
+
* Waits for command completion marker in PowerShell output
|
|
57
|
+
*/
|
|
58
|
+
function waitForCommandCompletion(driver, powerShell, timeoutMs) {
|
|
59
|
+
return new Promise((resolve, reject) => {
|
|
60
|
+
let timedOut = false;
|
|
200
61
|
const timeout = setTimeout(() => {
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
62
|
+
timedOut = true;
|
|
63
|
+
cleanup();
|
|
64
|
+
driver.log.warn(`PowerShell command timed out after ${timeoutMs}ms`);
|
|
65
|
+
try {
|
|
66
|
+
if (driver.powerShell === powerShell) {
|
|
204
67
|
powerShell.kill();
|
|
68
|
+
driver.powerShell = undefined;
|
|
205
69
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
}
|
|
209
|
-
driver.powerShell = undefined;
|
|
70
|
+
}
|
|
71
|
+
catch (e) {
|
|
72
|
+
driver.log.warn(`Failed to kill PowerShell: ${e}`);
|
|
210
73
|
}
|
|
211
74
|
reject(new base_driver_1.errors.TimeoutError(`PowerShell command timed out after ${timeoutMs}ms`));
|
|
212
75
|
}, timeoutMs);
|
|
76
|
+
const onData = (chunk) => {
|
|
77
|
+
if (chunk.toString().includes(COMMAND_END_CHAR)) {
|
|
78
|
+
cleanup();
|
|
79
|
+
if (driver.powerShellStdErr) {
|
|
80
|
+
driver.log.error(`PowerShell error: ${driver.powerShellStdErr}`);
|
|
81
|
+
reject(new base_driver_1.errors.UnknownError(driver.powerShellStdErr));
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
const result = driver.powerShellStdOut.replace(COMMAND_END_CHAR, '').trim();
|
|
85
|
+
resolve(result);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
};
|
|
213
89
|
const onClose = (code) => {
|
|
214
|
-
|
|
90
|
+
if (timedOut)
|
|
91
|
+
return;
|
|
92
|
+
cleanup();
|
|
215
93
|
if (driver.powerShell === powerShell) {
|
|
216
94
|
driver.powerShell = undefined;
|
|
217
95
|
}
|
|
218
96
|
if (code === 0) {
|
|
219
|
-
const result = driver.powerShellStdOut.replace(
|
|
220
|
-
driver.log.debug(`PowerShell process exited gracefully (0). Result length: ${result.length}`);
|
|
97
|
+
const result = driver.powerShellStdOut.replace(COMMAND_END_CHAR, '').trim();
|
|
221
98
|
resolve(result);
|
|
222
99
|
}
|
|
223
100
|
else {
|
|
224
|
-
|
|
101
|
+
const hexCode = '0x' + code.toString(16).toUpperCase();
|
|
102
|
+
const errorMsg = driver.powerShellStdErr || 'No error details';
|
|
103
|
+
driver.log.error(`PowerShell exited with code ${code} (${hexCode}). stderr: ${errorMsg}`);
|
|
104
|
+
reject(new base_driver_1.errors.UnknownError(`PowerShell exited with code ${code} (${hexCode})`));
|
|
225
105
|
}
|
|
226
106
|
};
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
clearTimeout(timeout);
|
|
232
|
-
powerShell.stdout.off('data', onData);
|
|
233
|
-
powerShell.off('close', onClose);
|
|
234
|
-
if (driver.powerShellStdErr) {
|
|
235
|
-
driver.log.error(`PowerShell command failed: ${driver.powerShellStdErr}`);
|
|
236
|
-
reject(new base_driver_1.errors.UnknownError(driver.powerShellStdErr));
|
|
237
|
-
}
|
|
238
|
-
else {
|
|
239
|
-
const result = driver.powerShellStdOut.replace(`${magicChar}`, '').trim();
|
|
240
|
-
driver.log.debug(`PowerShell command completed. Result length: ${result.length}`);
|
|
241
|
-
resolve(result);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
107
|
+
const cleanup = () => {
|
|
108
|
+
clearTimeout(timeout);
|
|
109
|
+
powerShell.stdout.off('data', onData);
|
|
110
|
+
powerShell.off('close', onClose);
|
|
244
111
|
};
|
|
245
112
|
powerShell.stdout.on('data', onData);
|
|
113
|
+
powerShell.once('close', onClose);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
// ============================================================================
|
|
117
|
+
// Main PowerShell Command Execution
|
|
118
|
+
// ============================================================================
|
|
119
|
+
/**
|
|
120
|
+
* Executes a PowerShell command in the persistent session
|
|
121
|
+
*/
|
|
122
|
+
async function sendPowerShellCommand(command) {
|
|
123
|
+
if (!this.commandQueue) {
|
|
124
|
+
this.commandQueue = Promise.resolve();
|
|
125
|
+
}
|
|
126
|
+
this.commandQueue = this.commandQueue.then(async () => {
|
|
127
|
+
ensureSessionReady(this);
|
|
128
|
+
this.powerShellStdOut = '';
|
|
129
|
+
this.powerShellStdErr = '';
|
|
130
|
+
try {
|
|
131
|
+
this.powerShell.stdin.write(`${command}\n`);
|
|
132
|
+
this.powerShell.stdin.write(`Write-Output $([char]0x${COMMAND_END_MARKER.toString(16)})\n`);
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
throw new base_driver_1.errors.UnknownError(`Failed to write to PowerShell: ${e.message}`);
|
|
136
|
+
}
|
|
137
|
+
const timeoutMs = this.caps.powerShellCommandTimeout || 60000;
|
|
138
|
+
return await waitForCommandCompletion(this, this.powerShell, timeoutMs);
|
|
139
|
+
});
|
|
140
|
+
return await this.commandQueue;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Executes a PowerShell command in an isolated session
|
|
144
|
+
*/
|
|
145
|
+
async function sendIsolatedPowerShellCommand(command) {
|
|
146
|
+
const powerShell = (0, node_child_process_1.spawn)('powershell.exe', ['-NoProfile', '-Command', command]);
|
|
147
|
+
let stdout = '';
|
|
148
|
+
let stderr = '';
|
|
149
|
+
powerShell.stdout.on('data', chunk => stdout += chunk.toString());
|
|
150
|
+
powerShell.stderr.on('data', chunk => stderr += chunk.toString());
|
|
151
|
+
return new Promise((resolve, reject) => {
|
|
152
|
+
powerShell.on('close', (code) => {
|
|
153
|
+
if (code === 0) {
|
|
154
|
+
resolve(stdout.trim());
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
const exitCode = code || -1;
|
|
158
|
+
const hexCode = '0x' + exitCode.toString(16).toUpperCase();
|
|
159
|
+
const error = stderr || 'No error details';
|
|
160
|
+
this.log.error(`Isolated PowerShell exited with code ${exitCode} (${hexCode}). stderr: ${error}`);
|
|
161
|
+
reject(new base_driver_1.errors.UnknownError(`PowerShell exited with code ${exitCode} (${hexCode})`));
|
|
162
|
+
}
|
|
163
|
+
});
|
|
246
164
|
});
|
|
247
165
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
166
|
+
// ============================================================================
|
|
167
|
+
// Session Management
|
|
168
|
+
// ============================================================================
|
|
169
|
+
async function startPowerShellSession() {
|
|
170
|
+
this.log.debug('Starting PowerShell session...');
|
|
171
|
+
// Spawn PowerShell process
|
|
172
|
+
const powerShell = (0, node_child_process_1.spawn)('powershell.exe', ['-NoProfile', '-NoExit', '-Command', '-']);
|
|
173
|
+
powerShell.stdout.setEncoding('utf8');
|
|
174
|
+
powerShell.stderr.setEncoding('utf8');
|
|
175
|
+
powerShell.stdout.on('data', (chunk) => {
|
|
176
|
+
this.powerShellStdOut += chunk.toString();
|
|
177
|
+
});
|
|
178
|
+
powerShell.stderr.on('data', (chunk) => {
|
|
179
|
+
this.powerShellStdErr += chunk.toString();
|
|
180
|
+
});
|
|
181
|
+
this.powerShell = powerShell;
|
|
182
|
+
// Set working directory if specified
|
|
183
|
+
if (this.caps.appWorkingDir) {
|
|
184
|
+
const expandedDir = expandEnvironmentVariables(this.caps.appWorkingDir, this.log);
|
|
185
|
+
this.caps.appWorkingDir = expandedDir;
|
|
186
|
+
await sendPowerShellCommand.call(this, `Set-Location -Path '${expandedDir}'`);
|
|
187
|
+
}
|
|
188
|
+
// Initialize PowerShell environment
|
|
189
|
+
const initScripts = [
|
|
190
|
+
SET_UTF8_ENCODING,
|
|
191
|
+
ADD_NECESSARY_ASSEMBLIES,
|
|
192
|
+
msaa_1.MSAA_HELPER_SCRIPT,
|
|
193
|
+
USE_UI_AUTOMATION_CLIENT,
|
|
194
|
+
INIT_CACHE_REQUEST,
|
|
195
|
+
INIT_ELEMENT_TABLE,
|
|
196
|
+
functions_1.PAGE_SOURCE,
|
|
197
|
+
functions_1.FIND_CHILDREN_RECURSIVELY
|
|
198
|
+
];
|
|
199
|
+
for (const script of initScripts) {
|
|
200
|
+
await sendPowerShellCommand.call(this, script);
|
|
201
|
+
}
|
|
202
|
+
// Setup root element based on capabilities
|
|
203
|
+
await setupRootElement.call(this);
|
|
204
|
+
this.log.debug('PowerShell session initialization completed');
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Sets up the root UI element based on capabilities
|
|
208
|
+
*/
|
|
209
|
+
async function setupRootElement() {
|
|
210
|
+
const { app, appTopLevelWindow } = this.caps;
|
|
211
|
+
// No app specified
|
|
212
|
+
if ((!app && !appTopLevelWindow) || (!app || app.toLowerCase() === 'none')) {
|
|
213
|
+
this.log.info('No app specified. Setting root element to null.');
|
|
214
|
+
await sendPowerShellCommand.call(this, NULL_ROOT_ELEMENT);
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
// Desktop root
|
|
218
|
+
if (app && app.toLowerCase() === 'root') {
|
|
219
|
+
this.log.info('Setting root element to desktop root.');
|
|
220
|
+
await sendPowerShellCommand.call(this, INIT_ROOT_ELEMENT);
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
// Launch application
|
|
224
|
+
if (app && app.toLowerCase() !== 'none') {
|
|
225
|
+
const expandedApp = expandEnvironmentVariables(app, this.log);
|
|
226
|
+
this.log.info(`Launching application: ${expandedApp}`);
|
|
227
|
+
await this.changeRootElement(expandedApp);
|
|
228
|
+
}
|
|
229
|
+
// Set by window handle
|
|
230
|
+
if (appTopLevelWindow) {
|
|
231
|
+
const handle = Number(appTopLevelWindow);
|
|
232
|
+
if (isNaN(handle)) {
|
|
233
|
+
throw new base_driver_1.errors.InvalidArgumentError('Invalid appTopLevelWindow: not a valid window handle');
|
|
234
|
+
}
|
|
235
|
+
await this.changeRootElement(handle);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
async function terminatePowerShellSession() {
|
|
239
|
+
if (!this.powerShell) {
|
|
240
|
+
this.log.debug('PowerShell session already terminated');
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
this.log.debug('Terminating PowerShell session...');
|
|
244
|
+
const powerShell = this.powerShell;
|
|
245
|
+
this.powerShell = undefined;
|
|
246
|
+
return new Promise((resolve) => {
|
|
254
247
|
const timeout = setTimeout(() => {
|
|
255
|
-
|
|
248
|
+
this.log.warn('PowerShell did not terminate gracefully, killing process');
|
|
256
249
|
try {
|
|
257
|
-
powerShell.kill();
|
|
250
|
+
powerShell.kill('SIGKILL');
|
|
258
251
|
}
|
|
259
252
|
catch (e) {
|
|
260
|
-
|
|
253
|
+
this.log.warn(`Failed to kill PowerShell: ${e}`);
|
|
261
254
|
}
|
|
262
|
-
|
|
263
|
-
},
|
|
264
|
-
|
|
255
|
+
resolve();
|
|
256
|
+
}, 5000);
|
|
257
|
+
powerShell.once('close', () => {
|
|
265
258
|
clearTimeout(timeout);
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
const magicChar = String.fromCharCode(magicNumber);
|
|
278
|
-
if (chunk.toString().includes(magicChar)) {
|
|
279
|
-
clearTimeout(timeout);
|
|
280
|
-
powerShell.stdout.off('data', onData);
|
|
281
|
-
powerShell.off('close', onClose);
|
|
282
|
-
if (output.stderr) {
|
|
283
|
-
driver.log.error(`Isolated PowerShell command failed: ${output.stderr}`);
|
|
284
|
-
reject(new base_driver_1.errors.UnknownError(output.stderr));
|
|
285
|
-
}
|
|
286
|
-
else {
|
|
287
|
-
const result = output.stdout.replace(`${magicChar}`, '').trim();
|
|
288
|
-
driver.log.debug(`Isolated PowerShell command completed. Result length: ${result.length}`);
|
|
289
|
-
resolve(result);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
};
|
|
293
|
-
powerShell.stdout.on('data', onData);
|
|
259
|
+
this.log.debug('PowerShell session terminated successfully');
|
|
260
|
+
resolve();
|
|
261
|
+
});
|
|
262
|
+
try {
|
|
263
|
+
powerShell.stdin.end();
|
|
264
|
+
}
|
|
265
|
+
catch (e) {
|
|
266
|
+
this.log.warn(`Error closing PowerShell stdin: ${e}`);
|
|
267
|
+
clearTimeout(timeout);
|
|
268
|
+
resolve();
|
|
269
|
+
}
|
|
294
270
|
});
|
|
295
271
|
}
|
|
296
272
|
//# sourceMappingURL=powershell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"powershell.js","sourceRoot":"","sources":["../../../lib/commands/powershell.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"powershell.js","sourceRoot":"","sources":["../../../lib/commands/powershell.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,23 +2,23 @@ import { Enum } from '../enums';
|
|
|
2
2
|
import { PSObject } from './core';
|
|
3
3
|
import { Condition } from './conditions';
|
|
4
4
|
export declare const TreeScope: Readonly<{
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
5
|
+
ANCESTORS_OR_SELF: "ancestors-or-self";
|
|
6
|
+
FOLLOWING: "following";
|
|
7
|
+
FOLLOWING_SIBLING: "following-sibling";
|
|
8
|
+
PRECEDING: "preceding";
|
|
9
|
+
PRECEDING_SIBLING: "preceding-sibling";
|
|
10
|
+
ANCESTORS: "ancestors";
|
|
11
|
+
CHILDREN_OR_SELF: "child-or-self";
|
|
12
|
+
CHILDREN: "children";
|
|
13
|
+
DESCENDANTS: "descendants";
|
|
14
|
+
ELEMENT: "element";
|
|
15
|
+
SUBTREE: "subtree";
|
|
16
|
+
PARENT: "parent";
|
|
17
17
|
}>;
|
|
18
18
|
export type TreeScope = Enum<typeof TreeScope>;
|
|
19
19
|
export declare const AutomationElementMode: Readonly<{
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
NONE: "none";
|
|
21
|
+
FULL: "full";
|
|
22
22
|
}>;
|
|
23
23
|
export type AutomationElementMode = Enum<typeof AutomationElementMode>;
|
|
24
24
|
export declare class AutomationElement extends PSObject {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elements.d.ts","sourceRoot":"","sources":["../../../lib/powershell/elements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAS,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"elements.d.ts","sourceRoot":"","sources":["../../../lib/powershell/elements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAS,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAyjBzC,eAAO,MAAM,SAAS;;;;;;;;;;;;;EAapB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;AAE/C,eAAO,MAAM,qBAAqB;;;EAGhC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,qBAAa,iBAAkB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM;IAI3B,MAAM,KAAK,cAAc,IAAI,iBAAiB,CAE7C;IAED,MAAM,KAAK,WAAW,IAAI,iBAAiB,CAE1C;IAED,MAAM,KAAK,cAAc,IAAI,iBAAiB,CAE7C;IAED,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,iBAAiB;IA2BpE,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,iBAAiB;IA2BlE,sBAAsB,IAAI,MAAM;IAIhC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAiCjD,4BAA4B,IAAI,MAAM;IAItC,0BAA0B,IAAI,MAAM;IAIpC,oBAAoB,IAAI,MAAM;IAI9B,YAAY,IAAI,MAAM;CAGzB;AAED,qBAAa,sBAAuB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;gBAEzB,GAAG,kBAAkB,EAAE,iBAAiB,EAAE;IAKtD,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,iBAAiB,EAAE;IAI1E,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,iBAAiB,EAAE;CAG/E;AAED,qBAAa,sBAAuB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAEf,SAAS,EAAE,MAAM;IAK7B,mBAAmB,IAAI,MAAM;IAI7B,kBAAkB,IAAI,MAAM;IAI5B,kBAAkB,IAAI,MAAM;IAI5B,oBAAoB,IAAI,MAAM;IAI9B,0BAA0B,IAAI,MAAM;IAIpC,4BAA4B,IAAI,MAAM;IAItC,wBAAwB,IAAI,MAAM;IAIlC,sBAAsB,IAAI,MAAM;IAIhC,0BAA0B,IAAI,MAAM;IAIpC,+BAA+B,IAAI,MAAM;IAIzC,kBAAkB,IAAI,MAAM;IAI5B,kBAAkB,IAAI,MAAM;IAI5B,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI3C,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIhD,oBAAoB,IAAI,MAAM;IAI9B,0BAA0B,IAAI,MAAM;IAIpC,oBAAoB,IAAI,MAAM;IAI9B,oBAAoB,IAAI,MAAM;IAI9B,mBAAmB,IAAI,MAAM;IAI7B,iBAAiB,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;CAGlC"}
|