craftdriver 0.0.1 → 0.0.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/LICENSE +1 -1
- package/README.md +2 -2
- package/dist/lib/browser.d.ts +37 -2
- package/dist/lib/browser.d.ts.map +1 -1
- package/dist/lib/browser.js +59 -1
- package/dist/lib/browser.js.map +1 -1
- package/dist/lib/elementHandle.d.ts +20 -7
- package/dist/lib/elementHandle.d.ts.map +1 -1
- package/dist/lib/elementHandle.js +51 -9
- package/dist/lib/elementHandle.js.map +1 -1
- package/dist/lib/expect.d.ts +45 -0
- package/dist/lib/expect.d.ts.map +1 -1
- package/dist/lib/expect.js +299 -11
- package/dist/lib/expect.js.map +1 -1
- package/dist/lib/service.d.ts +2 -1
- package/dist/lib/service.d.ts.map +1 -1
- package/dist/lib/service.js +23 -8
- package/dist/lib/service.js.map +1 -1
- package/dist/lib/webelement.d.ts +12 -0
- package/dist/lib/webelement.d.ts.map +1 -1
- package/dist/lib/webelement.js +62 -0
- package/dist/lib/webelement.js.map +1 -1
- package/package.json +6 -4
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -19,8 +19,8 @@ import { Browser } from 'craftdriver';
|
|
|
19
19
|
|
|
20
20
|
const browser = await Browser.launch({ browserName: 'chrome' });
|
|
21
21
|
await browser.navigateTo('http://127.0.0.1:8080/login.html');
|
|
22
|
-
await browser.
|
|
23
|
-
await browser.
|
|
22
|
+
await browser.fill('#username', 'testuser');
|
|
23
|
+
await browser.fill('#password', 'secret');
|
|
24
24
|
await browser.click('#submit');
|
|
25
25
|
await browser.expect('#result').toHaveText('Welcome testuser');
|
|
26
26
|
await browser.quit();
|
package/dist/lib/browser.d.ts
CHANGED
|
@@ -23,10 +23,18 @@ export declare class Browser {
|
|
|
23
23
|
wait<T>(condition: Condition<T>, timeoutMs?: number, intervalMs?: number, message?: string): Promise<T>;
|
|
24
24
|
quit(): Promise<void>;
|
|
25
25
|
click(selector: string | By): Promise<void>;
|
|
26
|
-
|
|
27
|
-
mask?: boolean;
|
|
26
|
+
fill(selector: string | By, text: string, opts?: {
|
|
28
27
|
timeout?: number;
|
|
29
28
|
}): Promise<void>;
|
|
29
|
+
clear(selector: string | By, opts?: {
|
|
30
|
+
timeout?: number;
|
|
31
|
+
}): Promise<void>;
|
|
32
|
+
getValue(selector: string | By, opts?: {
|
|
33
|
+
timeout?: number;
|
|
34
|
+
}): Promise<string>;
|
|
35
|
+
getAttribute(selector: string | By, name: string, opts?: {
|
|
36
|
+
timeout?: number;
|
|
37
|
+
}): Promise<string | null>;
|
|
30
38
|
gesture: {
|
|
31
39
|
swipe: ({ from, to, durationMs, }: {
|
|
32
40
|
from: [number, number];
|
|
@@ -44,6 +52,21 @@ export declare class Browser {
|
|
|
44
52
|
saveScreenshot(path: string, selectorOrBy?: string | By): Promise<Buffer>;
|
|
45
53
|
expect(selector: string | By): import("./expect.js").ExpectApi;
|
|
46
54
|
find(selector: string | By): ElementHandle;
|
|
55
|
+
getByRole(role: string, opts?: {
|
|
56
|
+
name?: string;
|
|
57
|
+
exact?: boolean;
|
|
58
|
+
includeHidden?: boolean;
|
|
59
|
+
}): ElementHandle;
|
|
60
|
+
getByText(text: string, opts?: {
|
|
61
|
+
exact?: boolean;
|
|
62
|
+
}): ElementHandle;
|
|
63
|
+
getByLabel(text: string, opts?: {
|
|
64
|
+
exact?: boolean;
|
|
65
|
+
}): ElementHandle;
|
|
66
|
+
getByPlaceholder(text: string, opts?: {
|
|
67
|
+
exact?: boolean;
|
|
68
|
+
}): ElementHandle;
|
|
69
|
+
getByTestId(id: string): ElementHandle;
|
|
47
70
|
keyboard: KeyboardController;
|
|
48
71
|
mouse: MouseController;
|
|
49
72
|
static Key: {
|
|
@@ -88,6 +111,18 @@ export declare class Browser {
|
|
|
88
111
|
waitFor(check: ((driver: Driver) => Promise<any> | any) | (() => Promise<any> | any), options?: WaitOptions & {
|
|
89
112
|
message?: string;
|
|
90
113
|
}): Promise<any>;
|
|
114
|
+
waitForVisible(selector: string | By, opts?: {
|
|
115
|
+
timeout?: number;
|
|
116
|
+
}): Promise<void>;
|
|
117
|
+
waitForHidden(selector: string | By, opts?: {
|
|
118
|
+
timeout?: number;
|
|
119
|
+
}): Promise<void>;
|
|
120
|
+
waitForAttached(selector: string | By, opts?: {
|
|
121
|
+
timeout?: number;
|
|
122
|
+
}): Promise<void>;
|
|
123
|
+
waitForDetached(selector: string | By, opts?: {
|
|
124
|
+
timeout?: number;
|
|
125
|
+
}): Promise<void>;
|
|
91
126
|
actions(): ActionsBuilder;
|
|
92
127
|
pause(ms: number): Promise<void>;
|
|
93
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/lib/browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAS,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IACpE,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,qBAAa,OAAO;IACE,OAAO,CAAC,MAAM;IAAlC,OAAO;WAKM,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2B5D,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAItB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAC1F,IAAI,CAAC,CAAC,EACJ,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EACvB,SAAS,CAAC,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,CAAC;IAKP,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,IAAI,CACR,QAAQ,EAAE,MAAM,GAAG,EAAE,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/lib/browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAS,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IACpE,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,qBAAa,OAAO;IACE,OAAO,CAAC,MAAM;IAAlC,OAAO;WAKM,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2B5D,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAItB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAC1F,IAAI,CAAC,CAAC,EACJ,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EACvB,SAAS,CAAC,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,CAAC;IAKP,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,IAAI,CACR,QAAQ,EAAE,MAAM,GAAG,EAAE,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1B,OAAO,CAAC,IAAI,CAAC;IAUV,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAS7E,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQ5G,OAAO;2CAKF;YACD,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACvB,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrB,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB;0DAQE;YACD,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACzB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB;MAGD;IAGI,UAAU,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAYvD,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAM/E,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE;IAK5B,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,GAAG,aAAa;IAM1C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa;IAI1G,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa;IAOlE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa;IAInE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa;IAIzE,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa;IAKtC,QAAQ,EAAE,kBAAkB,CAAC;IAG7B,KAAK,EAAE,eAAe,CAAC;IAEvB,MAAM,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAO;IAEX,OAAO,CACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAC5E,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAexC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjF,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhF,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlF,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF,OAAO;IAKD,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGvC"}
|
package/dist/lib/browser.js
CHANGED
|
@@ -62,14 +62,37 @@ export class Browser {
|
|
|
62
62
|
const el = await this.driver.wait(until.elementIsVisible(by), { timeout: 5000 });
|
|
63
63
|
await el.click();
|
|
64
64
|
}
|
|
65
|
-
async
|
|
65
|
+
async fill(selector, text, opts) {
|
|
66
66
|
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
67
67
|
const el = await this.driver.wait(until.elementIsVisible(by), {
|
|
68
68
|
timeout: opts?.timeout ?? 5000,
|
|
69
69
|
});
|
|
70
70
|
await el.click();
|
|
71
|
+
await el.clear();
|
|
71
72
|
await el.sendKeys(text);
|
|
72
73
|
}
|
|
74
|
+
async clear(selector, opts) {
|
|
75
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
76
|
+
const el = await this.driver.wait(until.elementIsVisible(by), {
|
|
77
|
+
timeout: opts?.timeout ?? 5000,
|
|
78
|
+
});
|
|
79
|
+
await el.clear();
|
|
80
|
+
}
|
|
81
|
+
async getValue(selector, opts) {
|
|
82
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
83
|
+
const el = await this.driver.wait(until.elementLocated(by), {
|
|
84
|
+
timeout: opts?.timeout ?? 5000,
|
|
85
|
+
});
|
|
86
|
+
const val = await el.getProperty('value');
|
|
87
|
+
return String(val ?? '');
|
|
88
|
+
}
|
|
89
|
+
async getAttribute(selector, name, opts) {
|
|
90
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
91
|
+
const el = await this.driver.wait(until.elementLocated(by), {
|
|
92
|
+
timeout: opts?.timeout ?? 5000,
|
|
93
|
+
});
|
|
94
|
+
return await el.getAttribute(name);
|
|
95
|
+
}
|
|
73
96
|
gesture = {
|
|
74
97
|
swipe: async ({ from, to, durationMs = 300, }) => {
|
|
75
98
|
await this.driver.performTouchSwipe(from, to, durationMs);
|
|
@@ -103,6 +126,25 @@ export class Browser {
|
|
|
103
126
|
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
104
127
|
return new ElementHandle(this.driver, by);
|
|
105
128
|
}
|
|
129
|
+
// Playwright-style getBy* helpers - return ElementHandle for fluent chaining
|
|
130
|
+
getByRole(role, opts) {
|
|
131
|
+
return new ElementHandle(this.driver, By.role(role, opts));
|
|
132
|
+
}
|
|
133
|
+
getByText(text, opts) {
|
|
134
|
+
if (opts?.exact === false) {
|
|
135
|
+
return new ElementHandle(this.driver, By.partialText(text));
|
|
136
|
+
}
|
|
137
|
+
return new ElementHandle(this.driver, By.text(text));
|
|
138
|
+
}
|
|
139
|
+
getByLabel(text, opts) {
|
|
140
|
+
return new ElementHandle(this.driver, By.labelText(text, opts));
|
|
141
|
+
}
|
|
142
|
+
getByPlaceholder(text, opts) {
|
|
143
|
+
return new ElementHandle(this.driver, By.placeholder(text, opts));
|
|
144
|
+
}
|
|
145
|
+
getByTestId(id) {
|
|
146
|
+
return new ElementHandle(this.driver, By.testId(id));
|
|
147
|
+
}
|
|
106
148
|
// Keyboard controller and enum for nicer usage: browser.keyboard.press(Key.Enter)
|
|
107
149
|
keyboard;
|
|
108
150
|
// Mouse controller: browser.mouse.click(...), move, down, up, wheel, dragAndDrop
|
|
@@ -122,6 +164,22 @@ export class Browser {
|
|
|
122
164
|
};
|
|
123
165
|
return this.wait(cond, options);
|
|
124
166
|
}
|
|
167
|
+
async waitForVisible(selector, opts) {
|
|
168
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
169
|
+
await this.driver.wait(until.elementIsVisible(by), { timeout: opts?.timeout ?? 5000 });
|
|
170
|
+
}
|
|
171
|
+
async waitForHidden(selector, opts) {
|
|
172
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
173
|
+
await this.driver.wait(until.elementIsNotVisible(by), { timeout: opts?.timeout ?? 5000 });
|
|
174
|
+
}
|
|
175
|
+
async waitForAttached(selector, opts) {
|
|
176
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
177
|
+
await this.driver.wait(until.elementExists(by), { timeout: opts?.timeout ?? 5000 });
|
|
178
|
+
}
|
|
179
|
+
async waitForDetached(selector, opts) {
|
|
180
|
+
const by = typeof selector === 'string' ? By.css(selector) : selector;
|
|
181
|
+
await this.driver.wait(until.elementNotExists(by), { timeout: opts?.timeout ?? 5000 });
|
|
182
|
+
}
|
|
125
183
|
actions() {
|
|
126
184
|
return new ActionsBuilder(this.driver);
|
|
127
185
|
}
|
package/dist/lib/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/lib/browser.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/lib/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,30 @@
|
|
|
1
1
|
import { By } from './by.js';
|
|
2
2
|
import type { Driver } from './driver.js';
|
|
3
3
|
import { type KeyValue } from './keys.js';
|
|
4
|
+
export interface ElementOptions {
|
|
5
|
+
timeout?: number;
|
|
6
|
+
}
|
|
4
7
|
export declare class ElementHandle {
|
|
5
8
|
private driver;
|
|
6
9
|
private by;
|
|
7
10
|
constructor(driver: Driver, by: By);
|
|
8
|
-
click(): Promise<void>;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
click(options?: ElementOptions): Promise<void>;
|
|
12
|
+
fill(text: string, options?: ElementOptions): Promise<void>;
|
|
13
|
+
clear(options?: ElementOptions): Promise<void>;
|
|
14
|
+
press(key: KeyValue, options?: ElementOptions): Promise<void>;
|
|
15
|
+
screenshot(path?: string, options?: ElementOptions): Promise<Buffer>;
|
|
16
|
+
text(options?: ElementOptions): Promise<string>;
|
|
17
|
+
value(options?: ElementOptions): Promise<string>;
|
|
18
|
+
getAttribute(name: string, options?: ElementOptions): Promise<string | null>;
|
|
19
|
+
isVisible(options?: ElementOptions): Promise<boolean>;
|
|
20
|
+
isEnabled(options?: ElementOptions): Promise<boolean>;
|
|
21
|
+
isChecked(options?: ElementOptions): Promise<boolean>;
|
|
22
|
+
boundingBox(options?: ElementOptions): Promise<{
|
|
23
|
+
x: number;
|
|
24
|
+
y: number;
|
|
25
|
+
width: number;
|
|
26
|
+
height: number;
|
|
27
|
+
} | null>;
|
|
15
28
|
expect(): import("./expect.js").ExpectApi;
|
|
16
29
|
}
|
|
17
30
|
//# sourceMappingURL=elementHandle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elementHandle.d.ts","sourceRoot":"","sources":["../../src/lib/elementHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEvD,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,EAAE;gBADF,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,EAAE;IAGV,KAAK,
|
|
1
|
+
{"version":3,"file":"elementHandle.d.ts","sourceRoot":"","sources":["../../src/lib/elementHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,EAAE;gBADF,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,EAAE;IAGV,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3D,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9C,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7D,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAQpE,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAK/C,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAMhD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK5E,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IASrD,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKrD,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKrD,WAAW,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IASpH,MAAM;CAGP"}
|
|
@@ -9,36 +9,78 @@ export class ElementHandle {
|
|
|
9
9
|
this.driver = driver;
|
|
10
10
|
this.by = by;
|
|
11
11
|
}
|
|
12
|
-
async click() {
|
|
13
|
-
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: 5000 });
|
|
12
|
+
async click(options) {
|
|
13
|
+
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: options?.timeout ?? 5000 });
|
|
14
14
|
await el.click();
|
|
15
15
|
}
|
|
16
|
-
async
|
|
16
|
+
async fill(text, options) {
|
|
17
17
|
const el = await this.driver.wait(until.elementIsVisible(this.by), {
|
|
18
18
|
timeout: options?.timeout ?? 5000,
|
|
19
19
|
});
|
|
20
20
|
await el.click();
|
|
21
|
+
await el.clear();
|
|
21
22
|
await el.sendKeys(text);
|
|
22
23
|
}
|
|
23
|
-
async
|
|
24
|
+
async clear(options) {
|
|
25
|
+
const el = await this.driver.wait(until.elementIsVisible(this.by), {
|
|
26
|
+
timeout: options?.timeout ?? 5000,
|
|
27
|
+
});
|
|
28
|
+
await el.clear();
|
|
29
|
+
}
|
|
30
|
+
async press(key, options) {
|
|
24
31
|
// assumes element is focused after click/type; ensure focus by clicking first
|
|
25
|
-
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: 5000 });
|
|
32
|
+
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: options?.timeout ?? 5000 });
|
|
26
33
|
await el.click();
|
|
27
34
|
const code = getKeyValue(key);
|
|
28
35
|
await this.driver.keyPressCode(code, 1);
|
|
29
36
|
}
|
|
30
|
-
async screenshot(path) {
|
|
31
|
-
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: 5000 });
|
|
37
|
+
async screenshot(path, options) {
|
|
38
|
+
const el = await this.driver.wait(until.elementIsVisible(this.by), { timeout: options?.timeout ?? 5000 });
|
|
32
39
|
const b64 = await el.screenshotBase64();
|
|
33
40
|
const buf = Buffer.from(b64, 'base64');
|
|
34
41
|
if (path)
|
|
35
42
|
await fs.writeFile(path, buf);
|
|
36
43
|
return buf;
|
|
37
44
|
}
|
|
38
|
-
async text() {
|
|
39
|
-
const el = await this.driver.
|
|
45
|
+
async text(options) {
|
|
46
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
40
47
|
return await el.getText();
|
|
41
48
|
}
|
|
49
|
+
async value(options) {
|
|
50
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
51
|
+
const val = await el.getProperty('value');
|
|
52
|
+
return String(val ?? '');
|
|
53
|
+
}
|
|
54
|
+
async getAttribute(name, options) {
|
|
55
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
56
|
+
return await el.getAttribute(name);
|
|
57
|
+
}
|
|
58
|
+
async isVisible(options) {
|
|
59
|
+
try {
|
|
60
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 1000 });
|
|
61
|
+
return await el.isDisplayed();
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async isEnabled(options) {
|
|
68
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
69
|
+
return await el.isEnabled();
|
|
70
|
+
}
|
|
71
|
+
async isChecked(options) {
|
|
72
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
73
|
+
return await el.isSelected();
|
|
74
|
+
}
|
|
75
|
+
async boundingBox(options) {
|
|
76
|
+
try {
|
|
77
|
+
const el = await this.driver.wait(until.elementLocated(this.by), { timeout: options?.timeout ?? 5000 });
|
|
78
|
+
return await el.getRect();
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
42
84
|
expect() {
|
|
43
85
|
return expectSelector(this.driver, this.by);
|
|
44
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elementHandle.js","sourceRoot":"","sources":["../../src/lib/elementHandle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAiB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"elementHandle.js","sourceRoot":"","sources":["../../src/lib/elementHandle.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/expect.d.ts
CHANGED
|
@@ -4,13 +4,58 @@ export interface ExpectApi {
|
|
|
4
4
|
toHaveText(text: string | RegExp, opts?: {
|
|
5
5
|
timeout?: number;
|
|
6
6
|
}): Promise<void>;
|
|
7
|
+
toContainText(text: string | RegExp, opts?: {
|
|
8
|
+
timeout?: number;
|
|
9
|
+
}): Promise<void>;
|
|
10
|
+
toHaveValue(value: string | RegExp, opts?: {
|
|
11
|
+
timeout?: number;
|
|
12
|
+
}): Promise<void>;
|
|
13
|
+
toHaveAttribute(name: string, value?: string | RegExp, opts?: {
|
|
14
|
+
timeout?: number;
|
|
15
|
+
}): Promise<void>;
|
|
16
|
+
toHaveClass(className: string, opts?: {
|
|
17
|
+
timeout?: number;
|
|
18
|
+
}): Promise<void>;
|
|
7
19
|
toBeVisible(opts?: {
|
|
8
20
|
timeout?: number;
|
|
9
21
|
}): Promise<void>;
|
|
22
|
+
toBeEnabled(opts?: {
|
|
23
|
+
timeout?: number;
|
|
24
|
+
}): Promise<void>;
|
|
25
|
+
toBeDisabled(opts?: {
|
|
26
|
+
timeout?: number;
|
|
27
|
+
}): Promise<void>;
|
|
28
|
+
toBeChecked(opts?: {
|
|
29
|
+
timeout?: number;
|
|
30
|
+
}): Promise<void>;
|
|
10
31
|
not: {
|
|
11
32
|
toBeVisible(opts?: {
|
|
12
33
|
timeout?: number;
|
|
13
34
|
}): Promise<void>;
|
|
35
|
+
toBeEnabled(opts?: {
|
|
36
|
+
timeout?: number;
|
|
37
|
+
}): Promise<void>;
|
|
38
|
+
toBeDisabled(opts?: {
|
|
39
|
+
timeout?: number;
|
|
40
|
+
}): Promise<void>;
|
|
41
|
+
toBeChecked(opts?: {
|
|
42
|
+
timeout?: number;
|
|
43
|
+
}): Promise<void>;
|
|
44
|
+
toHaveText(text: string | RegExp, opts?: {
|
|
45
|
+
timeout?: number;
|
|
46
|
+
}): Promise<void>;
|
|
47
|
+
toContainText(text: string | RegExp, opts?: {
|
|
48
|
+
timeout?: number;
|
|
49
|
+
}): Promise<void>;
|
|
50
|
+
toHaveValue(value: string | RegExp, opts?: {
|
|
51
|
+
timeout?: number;
|
|
52
|
+
}): Promise<void>;
|
|
53
|
+
toHaveAttribute(name: string, value?: string | RegExp, opts?: {
|
|
54
|
+
timeout?: number;
|
|
55
|
+
}): Promise<void>;
|
|
56
|
+
toHaveClass(className: string, opts?: {
|
|
57
|
+
timeout?: number;
|
|
58
|
+
}): Promise<void>;
|
|
14
59
|
};
|
|
15
60
|
}
|
|
16
61
|
export declare function expectSelector(driver: Driver, by: By): ExpectApi;
|
package/dist/lib/expect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../../src/lib/expect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,MAAM,WAAW,SAAS;IACxB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,WAAW,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,GAAG,EAAE;QACH,WAAW,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../../src/lib/expect.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/expect.js
CHANGED
|
@@ -1,7 +1,18 @@
|
|
|
1
1
|
import { until } from './wait.js';
|
|
2
|
+
function matchValue(actual, expected) {
|
|
3
|
+
if (expected instanceof RegExp) {
|
|
4
|
+
return expected.test(actual);
|
|
5
|
+
}
|
|
6
|
+
return actual === expected;
|
|
7
|
+
}
|
|
2
8
|
export function expectSelector(driver, by) {
|
|
3
|
-
function fail(message) {
|
|
4
|
-
|
|
9
|
+
function fail(message, callerFn) {
|
|
10
|
+
const error = new Error(message);
|
|
11
|
+
// Remove internal expect.ts frames from stack trace so test file line shows first
|
|
12
|
+
if (callerFn && Error.captureStackTrace) {
|
|
13
|
+
Error.captureStackTrace(error, callerFn);
|
|
14
|
+
}
|
|
15
|
+
throw error;
|
|
5
16
|
}
|
|
6
17
|
const toHaveText = async function toHaveText(expected, opts) {
|
|
7
18
|
const timeout = opts?.timeout ?? 5000;
|
|
@@ -13,12 +24,76 @@ export function expectSelector(driver, by) {
|
|
|
13
24
|
const found = await driver.findElement(by);
|
|
14
25
|
const text = (await found.getText())?.trim?.() ?? '';
|
|
15
26
|
last = text;
|
|
16
|
-
if (expected
|
|
17
|
-
|
|
27
|
+
if (matchValue(text, expected))
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
// retry
|
|
32
|
+
}
|
|
33
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
34
|
+
}
|
|
35
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
36
|
+
fail(`Expected element ${by.using}(${by.value}) to have text ${exp} but got "${last}"`, toHaveText);
|
|
37
|
+
};
|
|
38
|
+
const toContainText = async function toContainText(expected, opts) {
|
|
39
|
+
const timeout = opts?.timeout ?? 5000;
|
|
40
|
+
const deadline = Date.now() + timeout;
|
|
41
|
+
let last = '';
|
|
42
|
+
while (Date.now() < deadline) {
|
|
43
|
+
try {
|
|
44
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
45
|
+
const found = await driver.findElement(by);
|
|
46
|
+
const text = (await found.getText())?.trim?.() ?? '';
|
|
47
|
+
last = text;
|
|
48
|
+
if (expected instanceof RegExp ? expected.test(text) : text.includes(expected))
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
// retry
|
|
53
|
+
}
|
|
54
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
55
|
+
}
|
|
56
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
57
|
+
fail(`Expected element ${by.using}(${by.value}) to contain text ${exp} but got "${last}"`, toContainText);
|
|
58
|
+
};
|
|
59
|
+
const toHaveValue = async function toHaveValue(expected, opts) {
|
|
60
|
+
const timeout = opts?.timeout ?? 5000;
|
|
61
|
+
const deadline = Date.now() + timeout;
|
|
62
|
+
let last = '';
|
|
63
|
+
while (Date.now() < deadline) {
|
|
64
|
+
try {
|
|
65
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
66
|
+
const found = await driver.findElement(by);
|
|
67
|
+
const val = await found.getProperty('value');
|
|
68
|
+
last = String(val ?? '');
|
|
69
|
+
if (matchValue(last, expected))
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
// retry
|
|
74
|
+
}
|
|
75
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
76
|
+
}
|
|
77
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
78
|
+
fail(`Expected element ${by.using}(${by.value}) to have value ${exp} but got "${last}"`, toHaveValue);
|
|
79
|
+
};
|
|
80
|
+
const toHaveAttribute = async function toHaveAttribute(name, value, opts) {
|
|
81
|
+
const timeout = opts?.timeout ?? 5000;
|
|
82
|
+
const deadline = Date.now() + timeout;
|
|
83
|
+
let last = null;
|
|
84
|
+
while (Date.now() < deadline) {
|
|
85
|
+
try {
|
|
86
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
87
|
+
const found = await driver.findElement(by);
|
|
88
|
+
last = await found.getAttribute(name);
|
|
89
|
+
if (value === undefined) {
|
|
90
|
+
// Just check attribute exists
|
|
91
|
+
if (last !== null)
|
|
18
92
|
return;
|
|
19
93
|
}
|
|
20
|
-
else
|
|
21
|
-
|
|
94
|
+
else {
|
|
95
|
+
if (last !== null && matchValue(last, value))
|
|
96
|
+
return;
|
|
22
97
|
}
|
|
23
98
|
}
|
|
24
99
|
catch {
|
|
@@ -26,8 +101,32 @@ export function expectSelector(driver, by) {
|
|
|
26
101
|
}
|
|
27
102
|
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
28
103
|
}
|
|
29
|
-
|
|
30
|
-
|
|
104
|
+
if (value === undefined) {
|
|
105
|
+
fail(`Expected element ${by.using}(${by.value}) to have attribute "${name}" but it was not found`, toHaveAttribute);
|
|
106
|
+
}
|
|
107
|
+
const exp = value instanceof RegExp ? `/${value.source}/` : `"${value}"`;
|
|
108
|
+
fail(`Expected element ${by.using}(${by.value}) to have attribute "${name}" = ${exp} but got "${last}"`, toHaveAttribute);
|
|
109
|
+
};
|
|
110
|
+
const toHaveClass = async function toHaveClass(className, opts) {
|
|
111
|
+
const timeout = opts?.timeout ?? 5000;
|
|
112
|
+
const deadline = Date.now() + timeout;
|
|
113
|
+
let last = '';
|
|
114
|
+
while (Date.now() < deadline) {
|
|
115
|
+
try {
|
|
116
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
117
|
+
const found = await driver.findElement(by);
|
|
118
|
+
const cls = await found.getAttribute('class');
|
|
119
|
+
last = cls ?? '';
|
|
120
|
+
const classes = last.split(/\s+/);
|
|
121
|
+
if (classes.includes(className))
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
catch {
|
|
125
|
+
// retry
|
|
126
|
+
}
|
|
127
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
128
|
+
}
|
|
129
|
+
fail(`Expected element ${by.using}(${by.value}) to have class "${className}" but got "${last}"`, toHaveClass);
|
|
31
130
|
};
|
|
32
131
|
const toBeVisible = async function toBeVisible(opts) {
|
|
33
132
|
const timeout = opts?.timeout ?? 5000;
|
|
@@ -35,7 +134,7 @@ export function expectSelector(driver, by) {
|
|
|
35
134
|
await driver.wait(until.elementIsVisible(by), { timeout });
|
|
36
135
|
}
|
|
37
136
|
catch {
|
|
38
|
-
fail(`Expected element ${by.using}(${by.value}) to be visible within ${timeout}ms
|
|
137
|
+
fail(`Expected element ${by.using}(${by.value}) to be visible within ${timeout}ms`, toBeVisible);
|
|
39
138
|
}
|
|
40
139
|
};
|
|
41
140
|
const toBeNotVisible = async function toBeNotVisible(opts) {
|
|
@@ -44,13 +143,202 @@ export function expectSelector(driver, by) {
|
|
|
44
143
|
await driver.wait(until.elementIsNotVisible(by), { timeout });
|
|
45
144
|
}
|
|
46
145
|
catch {
|
|
47
|
-
fail(`Expected element ${by.using}(${by.value}) to become hidden within ${timeout}ms
|
|
146
|
+
fail(`Expected element ${by.using}(${by.value}) to become hidden within ${timeout}ms`, toBeNotVisible);
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
const toBeEnabled = async function toBeEnabled(opts) {
|
|
150
|
+
const timeout = opts?.timeout ?? 5000;
|
|
151
|
+
const deadline = Date.now() + timeout;
|
|
152
|
+
while (Date.now() < deadline) {
|
|
153
|
+
try {
|
|
154
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
155
|
+
const found = await driver.findElement(by);
|
|
156
|
+
if (await found.isEnabled())
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
catch {
|
|
160
|
+
// retry
|
|
161
|
+
}
|
|
162
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
163
|
+
}
|
|
164
|
+
fail(`Expected element ${by.using}(${by.value}) to be enabled within ${timeout}ms`, toBeEnabled);
|
|
165
|
+
};
|
|
166
|
+
const toBeDisabled = async function toBeDisabled(opts) {
|
|
167
|
+
const timeout = opts?.timeout ?? 5000;
|
|
168
|
+
const deadline = Date.now() + timeout;
|
|
169
|
+
while (Date.now() < deadline) {
|
|
170
|
+
try {
|
|
171
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
172
|
+
const found = await driver.findElement(by);
|
|
173
|
+
if (!(await found.isEnabled()))
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
catch {
|
|
177
|
+
// retry
|
|
178
|
+
}
|
|
179
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
180
|
+
}
|
|
181
|
+
fail(`Expected element ${by.using}(${by.value}) to be disabled within ${timeout}ms`, toBeDisabled);
|
|
182
|
+
};
|
|
183
|
+
const toBeChecked = async function toBeChecked(opts) {
|
|
184
|
+
const timeout = opts?.timeout ?? 5000;
|
|
185
|
+
const deadline = Date.now() + timeout;
|
|
186
|
+
while (Date.now() < deadline) {
|
|
187
|
+
try {
|
|
188
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
189
|
+
const found = await driver.findElement(by);
|
|
190
|
+
if (await found.isSelected())
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
catch {
|
|
194
|
+
// retry
|
|
195
|
+
}
|
|
196
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
197
|
+
}
|
|
198
|
+
fail(`Expected element ${by.using}(${by.value}) to be checked within ${timeout}ms`, toBeChecked);
|
|
199
|
+
};
|
|
200
|
+
const toBeNotChecked = async function toBeNotChecked(opts) {
|
|
201
|
+
const timeout = opts?.timeout ?? 5000;
|
|
202
|
+
const deadline = Date.now() + timeout;
|
|
203
|
+
while (Date.now() < deadline) {
|
|
204
|
+
try {
|
|
205
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
206
|
+
const found = await driver.findElement(by);
|
|
207
|
+
if (!(await found.isSelected()))
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
catch {
|
|
211
|
+
// retry
|
|
212
|
+
}
|
|
213
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
214
|
+
}
|
|
215
|
+
fail(`Expected element ${by.using}(${by.value}) to not be checked within ${timeout}ms`, toBeNotChecked);
|
|
216
|
+
};
|
|
217
|
+
const notToHaveText = async function notToHaveText(expected, opts) {
|
|
218
|
+
const timeout = opts?.timeout ?? 5000;
|
|
219
|
+
const deadline = Date.now() + timeout;
|
|
220
|
+
while (Date.now() < deadline) {
|
|
221
|
+
try {
|
|
222
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
223
|
+
const found = await driver.findElement(by);
|
|
224
|
+
const text = (await found.getText())?.trim?.() ?? '';
|
|
225
|
+
if (!matchValue(text, expected))
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
catch {
|
|
229
|
+
return; // element not found = text doesn't match
|
|
230
|
+
}
|
|
231
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
232
|
+
}
|
|
233
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
234
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT have text ${exp}`, notToHaveText);
|
|
235
|
+
};
|
|
236
|
+
const notToContainText = async function notToContainText(expected, opts) {
|
|
237
|
+
const timeout = opts?.timeout ?? 5000;
|
|
238
|
+
const deadline = Date.now() + timeout;
|
|
239
|
+
while (Date.now() < deadline) {
|
|
240
|
+
try {
|
|
241
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
242
|
+
const found = await driver.findElement(by);
|
|
243
|
+
const text = (await found.getText())?.trim?.() ?? '';
|
|
244
|
+
if (expected instanceof RegExp ? !expected.test(text) : !text.includes(expected))
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
catch {
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
251
|
+
}
|
|
252
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
253
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT contain text ${exp}`, notToContainText);
|
|
254
|
+
};
|
|
255
|
+
const notToHaveValue = async function notToHaveValue(expected, opts) {
|
|
256
|
+
const timeout = opts?.timeout ?? 5000;
|
|
257
|
+
const deadline = Date.now() + timeout;
|
|
258
|
+
while (Date.now() < deadline) {
|
|
259
|
+
try {
|
|
260
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
261
|
+
const found = await driver.findElement(by);
|
|
262
|
+
const val = String(await found.getProperty('value') ?? '');
|
|
263
|
+
if (!matchValue(val, expected))
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
catch {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
270
|
+
}
|
|
271
|
+
const exp = expected instanceof RegExp ? `/${expected.source}/` : `"${expected}"`;
|
|
272
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT have value ${exp}`, notToHaveValue);
|
|
273
|
+
};
|
|
274
|
+
const notToHaveAttribute = async function notToHaveAttribute(name, value, opts) {
|
|
275
|
+
const timeout = opts?.timeout ?? 5000;
|
|
276
|
+
const deadline = Date.now() + timeout;
|
|
277
|
+
while (Date.now() < deadline) {
|
|
278
|
+
try {
|
|
279
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
280
|
+
const found = await driver.findElement(by);
|
|
281
|
+
const attr = await found.getAttribute(name);
|
|
282
|
+
if (value === undefined) {
|
|
283
|
+
if (attr === null)
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
else {
|
|
287
|
+
if (attr === null || !matchValue(attr, value))
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
catch {
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
295
|
+
}
|
|
296
|
+
if (value === undefined) {
|
|
297
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT have attribute "${name}"`, notToHaveAttribute);
|
|
298
|
+
}
|
|
299
|
+
const exp = value instanceof RegExp ? `/${value.source}/` : `"${value}"`;
|
|
300
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT have attribute "${name}" = ${exp}`, notToHaveAttribute);
|
|
301
|
+
};
|
|
302
|
+
const notToHaveClass = async function notToHaveClass(className, opts) {
|
|
303
|
+
const timeout = opts?.timeout ?? 5000;
|
|
304
|
+
const deadline = Date.now() + timeout;
|
|
305
|
+
while (Date.now() < deadline) {
|
|
306
|
+
try {
|
|
307
|
+
await driver.wait(until.elementExists(by), { timeout: Math.min(250, timeout) });
|
|
308
|
+
const found = await driver.findElement(by);
|
|
309
|
+
const cls = await found.getAttribute('class') ?? '';
|
|
310
|
+
const classes = cls.split(/\s+/);
|
|
311
|
+
if (!classes.includes(className))
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
catch {
|
|
315
|
+
return;
|
|
316
|
+
}
|
|
317
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
48
318
|
}
|
|
319
|
+
fail(`Expected element ${by.using}(${by.value}) to NOT have class "${className}"`, notToHaveClass);
|
|
49
320
|
};
|
|
50
321
|
return {
|
|
51
322
|
toHaveText,
|
|
323
|
+
toContainText,
|
|
324
|
+
toHaveValue,
|
|
325
|
+
toHaveAttribute,
|
|
326
|
+
toHaveClass,
|
|
52
327
|
toBeVisible,
|
|
53
|
-
|
|
328
|
+
toBeEnabled,
|
|
329
|
+
toBeDisabled,
|
|
330
|
+
toBeChecked,
|
|
331
|
+
not: {
|
|
332
|
+
toBeVisible: toBeNotVisible,
|
|
333
|
+
toBeEnabled: toBeDisabled, // not enabled = disabled
|
|
334
|
+
toBeDisabled: toBeEnabled, // not disabled = enabled
|
|
335
|
+
toBeChecked: toBeNotChecked,
|
|
336
|
+
toHaveText: notToHaveText,
|
|
337
|
+
toContainText: notToContainText,
|
|
338
|
+
toHaveValue: notToHaveValue,
|
|
339
|
+
toHaveAttribute: notToHaveAttribute,
|
|
340
|
+
toHaveClass: notToHaveClass,
|
|
341
|
+
},
|
|
54
342
|
};
|
|
55
343
|
}
|
|
56
344
|
//# sourceMappingURL=expect.js.map
|
package/dist/lib/expect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expect.js","sourceRoot":"","sources":["../../src/lib/expect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expect.js","sourceRoot":"","sources":["../../src/lib/expect.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/service.d.ts
CHANGED
|
@@ -13,8 +13,9 @@ export interface DriverServiceOptions {
|
|
|
13
13
|
export declare class DriverService {
|
|
14
14
|
protected proc?: ChildProcess;
|
|
15
15
|
protected endpoint: WebDriverEndpoint;
|
|
16
|
-
protected readonly opts: Required<Omit<DriverServiceOptions, 'env'>> & {
|
|
16
|
+
protected readonly opts: Required<Omit<DriverServiceOptions, 'env' | 'port'>> & {
|
|
17
17
|
env?: NodeJS.ProcessEnv;
|
|
18
|
+
port?: number;
|
|
18
19
|
};
|
|
19
20
|
constructor(options: DriverServiceOptions);
|
|
20
21
|
getEndpoint(): WebDriverEndpoint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/lib/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/lib/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAG/C,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAeD,qBAAa,aAAa;IACxB,SAAS,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAG,iBAAiB,CAAC;IACvC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG;QAC9E,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;gBAEU,OAAO,EAAE,oBAAoB;IAazC,WAAW,IAAI,iBAAiB;IAI1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;cAOX,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;cAsBtC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBhD"}
|
package/dist/lib/service.js
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import { spawn } from 'child_process';
|
|
2
2
|
import { HttpClient } from './http.js';
|
|
3
|
+
import net from 'net';
|
|
4
|
+
async function findFreePort() {
|
|
5
|
+
return new Promise((resolve, reject) => {
|
|
6
|
+
const server = net.createServer();
|
|
7
|
+
server.unref();
|
|
8
|
+
server.on('error', reject);
|
|
9
|
+
server.listen(0, '127.0.0.1', () => {
|
|
10
|
+
const addr = server.address();
|
|
11
|
+
const port = typeof addr === 'object' && addr ? addr.port : 0;
|
|
12
|
+
server.close(() => resolve(port));
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
}
|
|
3
16
|
export class DriverService {
|
|
4
17
|
proc;
|
|
5
18
|
endpoint;
|
|
@@ -9,18 +22,12 @@ export class DriverService {
|
|
|
9
22
|
args: options.args ?? [],
|
|
10
23
|
command: options.command,
|
|
11
24
|
hostname: options.hostname ?? '127.0.0.1',
|
|
12
|
-
port: options.port
|
|
25
|
+
port: options.port, // undefined means auto-assign
|
|
13
26
|
pathBase: options.pathBase ?? '',
|
|
14
27
|
readinessPath: options.readinessPath ?? '/status',
|
|
15
28
|
readinessTimeoutMs: options.readinessTimeoutMs ?? 5000,
|
|
16
29
|
env: options.env,
|
|
17
30
|
};
|
|
18
|
-
this.endpoint = {
|
|
19
|
-
protocol: 'http',
|
|
20
|
-
hostname: this.opts.hostname,
|
|
21
|
-
port: this.opts.port,
|
|
22
|
-
path: this.opts.pathBase,
|
|
23
|
-
};
|
|
24
31
|
}
|
|
25
32
|
getEndpoint() {
|
|
26
33
|
return this.endpoint;
|
|
@@ -29,7 +36,15 @@ export class DriverService {
|
|
|
29
36
|
if (this.proc)
|
|
30
37
|
return; // already started
|
|
31
38
|
await this.ensureBinaryAvailable();
|
|
32
|
-
|
|
39
|
+
// Assign a free port if not specified
|
|
40
|
+
const port = this.opts.port ?? await findFreePort();
|
|
41
|
+
this.endpoint = {
|
|
42
|
+
protocol: 'http',
|
|
43
|
+
hostname: this.opts.hostname,
|
|
44
|
+
port,
|
|
45
|
+
path: this.opts.pathBase,
|
|
46
|
+
};
|
|
47
|
+
this.proc = spawn(this.opts.command, [`--port=${port}`, ...this.opts.args], {
|
|
33
48
|
env: { ...process.env, ...this.opts.env },
|
|
34
49
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
35
50
|
});
|
package/dist/lib/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/lib/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/lib/service.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/webelement.d.ts
CHANGED
|
@@ -16,5 +16,17 @@ export declare class WebElement {
|
|
|
16
16
|
};
|
|
17
17
|
isDisplayed(): Promise<boolean>;
|
|
18
18
|
screenshotBase64(): Promise<string>;
|
|
19
|
+
clear(): Promise<void>;
|
|
20
|
+
getAttribute(name: string): Promise<string | null>;
|
|
21
|
+
getProperty(name: string): Promise<unknown>;
|
|
22
|
+
isEnabled(): Promise<boolean>;
|
|
23
|
+
isSelected(): Promise<boolean>;
|
|
24
|
+
getTagName(): Promise<string>;
|
|
25
|
+
getRect(): Promise<{
|
|
26
|
+
x: number;
|
|
27
|
+
y: number;
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
}>;
|
|
19
31
|
}
|
|
20
32
|
//# sourceMappingURL=webelement.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webelement.d.ts","sourceRoot":"","sources":["../../src/lib/webelement.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAErE,eAAO,MAAM,eAAe,wCAAwC,CAAC;AACrE,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAE5C,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;gBAFT,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM;IAG3B,KAAK,IAAI,MAAM;IAIT,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAUhC,MAAM;;;;IAIA,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAU/B,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"webelement.d.ts","sourceRoot":"","sources":["../../src/lib/webelement.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAErE,eAAO,MAAM,eAAe,wCAAwC,CAAC;AACrE,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAE5C,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;gBAFT,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM;IAG3B,KAAK,IAAI,MAAM;IAIT,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAUhC,MAAM;;;;IAIA,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAU/B,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAUnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAUlD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU3C,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAU7B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAU9B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,OAAO,IAAI,OAAO,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CASlF"}
|
package/dist/lib/webelement.js
CHANGED
|
@@ -60,5 +60,67 @@ export class WebElement {
|
|
|
60
60
|
const value = res?.value ?? res;
|
|
61
61
|
return String(value ?? '');
|
|
62
62
|
}
|
|
63
|
+
async clear() {
|
|
64
|
+
const client = new HttpClient(this.endpoint);
|
|
65
|
+
await client.send({
|
|
66
|
+
method: 'POST',
|
|
67
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/clear`,
|
|
68
|
+
body: {},
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
async getAttribute(name) {
|
|
72
|
+
const client = new HttpClient(this.endpoint);
|
|
73
|
+
const res = await client.send({
|
|
74
|
+
method: 'GET',
|
|
75
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/attribute/${name}`,
|
|
76
|
+
});
|
|
77
|
+
const value = res?.value ?? res;
|
|
78
|
+
return value;
|
|
79
|
+
}
|
|
80
|
+
async getProperty(name) {
|
|
81
|
+
const client = new HttpClient(this.endpoint);
|
|
82
|
+
const res = await client.send({
|
|
83
|
+
method: 'GET',
|
|
84
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/property/${name}`,
|
|
85
|
+
});
|
|
86
|
+
const value = res?.value ?? res;
|
|
87
|
+
return value;
|
|
88
|
+
}
|
|
89
|
+
async isEnabled() {
|
|
90
|
+
const client = new HttpClient(this.endpoint);
|
|
91
|
+
const res = await client.send({
|
|
92
|
+
method: 'GET',
|
|
93
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/enabled`,
|
|
94
|
+
});
|
|
95
|
+
const value = res?.value ?? res;
|
|
96
|
+
return Boolean(value);
|
|
97
|
+
}
|
|
98
|
+
async isSelected() {
|
|
99
|
+
const client = new HttpClient(this.endpoint);
|
|
100
|
+
const res = await client.send({
|
|
101
|
+
method: 'GET',
|
|
102
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/selected`,
|
|
103
|
+
});
|
|
104
|
+
const value = res?.value ?? res;
|
|
105
|
+
return Boolean(value);
|
|
106
|
+
}
|
|
107
|
+
async getTagName() {
|
|
108
|
+
const client = new HttpClient(this.endpoint);
|
|
109
|
+
const res = await client.send({
|
|
110
|
+
method: 'GET',
|
|
111
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/name`,
|
|
112
|
+
});
|
|
113
|
+
const value = res?.value ?? res;
|
|
114
|
+
return String(value ?? '').toLowerCase();
|
|
115
|
+
}
|
|
116
|
+
async getRect() {
|
|
117
|
+
const client = new HttpClient(this.endpoint);
|
|
118
|
+
const res = await client.send({
|
|
119
|
+
method: 'GET',
|
|
120
|
+
path: `/session/${this.sessionId}/element/${this.elementId}/rect`,
|
|
121
|
+
});
|
|
122
|
+
const value = res?.value ?? res;
|
|
123
|
+
return value;
|
|
124
|
+
}
|
|
63
125
|
}
|
|
64
126
|
//# sourceMappingURL=webelement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webelement.js","sourceRoot":"","sources":["../../src/lib/webelement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,MAAM,CAAC,MAAM,eAAe,GAAG,qCAAqC,CAAC;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAE5C,MAAM,OAAO,UAAU;IAEX;IACA;IACA;IAHV,YACU,QAA2B,EAC3B,SAAiB,EACjB,SAAiB;QAFjB,aAAQ,GAAR,QAAQ,CAAmB;QAC3B,cAAS,GAAT,SAAS,CAAQ;QACjB,cAAS,GAAT,SAAS,CAAQ;
|
|
1
|
+
{"version":3,"file":"webelement.js","sourceRoot":"","sources":["../../src/lib/webelement.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "craftdriver",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "Modern WebDriver automation library for NodeJS",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -50,6 +50,8 @@
|
|
|
50
50
|
],
|
|
51
51
|
"sideEffects": false,
|
|
52
52
|
"devDependencies": {
|
|
53
|
+
"@semantic-release/changelog": "^6.0.3",
|
|
54
|
+
"@semantic-release/git": "^10.0.1",
|
|
53
55
|
"@types/node": "^20.0.0",
|
|
54
56
|
"@typescript-eslint/eslint-plugin": "^8.1.0",
|
|
55
57
|
"@typescript-eslint/parser": "^8.1.0",
|
|
@@ -61,9 +63,9 @@
|
|
|
61
63
|
"http-server": "^14.1.1",
|
|
62
64
|
"prettier": "^3.3.3",
|
|
63
65
|
"rimraf": "^6.0.1",
|
|
66
|
+
"semantic-release": "^25.0.3",
|
|
64
67
|
"typescript": "^5.0.0",
|
|
65
|
-
"vitest": "^
|
|
68
|
+
"vitest": "^4.0.18"
|
|
66
69
|
},
|
|
67
|
-
"dependencies": {
|
|
68
|
-
}
|
|
70
|
+
"dependencies": {}
|
|
69
71
|
}
|