d5-testing-library 2.0.0-alpha.3 → 2.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{FormEdit-FIYSIGH2.mjs → FormEdit-KTRSSTSI.mjs} +1 -1
- package/dist/{ListForm-BE52U7IR.mjs → ListForm-H7E4GQWM.mjs} +1 -1
- package/dist/{TreeView-AMVY2DII.mjs → TreeView-Q7YDCHQZ.mjs} +1 -1
- package/dist/{chunk-WZKO7TMT.mjs → chunk-N4PDOG6U.mjs} +70 -15
- package/dist/cjs/d5-testing-library.cjs +76 -13
- package/dist/cjs/d5-testing-library.d.ts +14 -1
- package/dist/d5-testing-library.d.mts +14 -1
- package/dist/d5-testing-library.legacy-esm.js +1 -1
- package/dist/d5-testing-library.mjs +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
//.
|
|
@@ -2941,6 +2941,15 @@ function createSubSystemTestId(itemName) {
|
|
|
2941
2941
|
function createEditorButtonTestId(itemName) {
|
|
2942
2942
|
return `${"editor-button" /* EDITOR_BUTTON */}-${itemName}`;
|
|
2943
2943
|
}
|
|
2944
|
+
function createLabelFieldTestId(formName, itemName) {
|
|
2945
|
+
return `${"label" /* LABEL */}-${createFieldTestId(formName, itemName)}`;
|
|
2946
|
+
}
|
|
2947
|
+
function createLabelDocFilterTestId(formName, itemName) {
|
|
2948
|
+
return `${"label" /* LABEL */}-${createDocFilterTestId(formName, itemName)}`;
|
|
2949
|
+
}
|
|
2950
|
+
function createLabelLayoutFilterTestId(formName, itemName) {
|
|
2951
|
+
return `${"label" /* LABEL */}-${createLayoutFilterTestId(formName, itemName)}`;
|
|
2952
|
+
}
|
|
2944
2953
|
|
|
2945
2954
|
// src/pageObjects/AbstractElementWithParent.ts
|
|
2946
2955
|
var AbstractElementWithParent = class extends AbstractElement {
|
|
@@ -3263,7 +3272,7 @@ var AbstractForm = class extends AbstractPage {
|
|
|
3263
3272
|
async exists() {
|
|
3264
3273
|
try {
|
|
3265
3274
|
const container = this.page.locator(this.containerCssSelector);
|
|
3266
|
-
await waitElementIsVisible_default({ locator: container });
|
|
3275
|
+
await waitElementIsVisible_default({ locator: container, timeout: 3e3 });
|
|
3267
3276
|
return true;
|
|
3268
3277
|
} catch (error) {
|
|
3269
3278
|
return false;
|
|
@@ -3308,15 +3317,15 @@ async function classDependencyInjector(formType) {
|
|
|
3308
3317
|
let SubFormFactoryClass;
|
|
3309
3318
|
switch (formType) {
|
|
3310
3319
|
case "1" /* LIST */:
|
|
3311
|
-
SubFormFactoryClass = (await import("./ListForm-
|
|
3320
|
+
SubFormFactoryClass = (await import("./ListForm-H7E4GQWM.mjs")).default;
|
|
3312
3321
|
break;
|
|
3313
3322
|
case "3" /* TREE */:
|
|
3314
|
-
SubFormFactoryClass = (await import("./TreeView-
|
|
3323
|
+
SubFormFactoryClass = (await import("./TreeView-Q7YDCHQZ.mjs")).default;
|
|
3315
3324
|
break;
|
|
3316
3325
|
case "2" /* EDIT */:
|
|
3317
3326
|
case "99" /* FREE_FORM */:
|
|
3318
3327
|
case "4" /* REPORT */:
|
|
3319
|
-
SubFormFactoryClass = (await import("./FormEdit-
|
|
3328
|
+
SubFormFactoryClass = (await import("./FormEdit-KTRSSTSI.mjs")).default;
|
|
3320
3329
|
break;
|
|
3321
3330
|
default:
|
|
3322
3331
|
throw new Error(`Unsupported form type ${formType}`);
|
|
@@ -4157,7 +4166,12 @@ var FormFilterField = class extends AbstractEditor {
|
|
|
4157
4166
|
formName;
|
|
4158
4167
|
name;
|
|
4159
4168
|
constructor(parentCssSelector, formName, name, page) {
|
|
4160
|
-
super(
|
|
4169
|
+
super({
|
|
4170
|
+
parentCssSelector,
|
|
4171
|
+
elementCssSelector: byTestIdCssSelector(createLayoutFilterTestId(formName, name)),
|
|
4172
|
+
titleCssSelector: byTestIdCssSelector(createLabelLayoutFilterTestId(formName, name)),
|
|
4173
|
+
page
|
|
4174
|
+
});
|
|
4161
4175
|
this.formName = formName;
|
|
4162
4176
|
this.name = name;
|
|
4163
4177
|
}
|
|
@@ -4261,7 +4275,12 @@ var PanelFilterField = class extends AbstractEditor {
|
|
|
4261
4275
|
formName;
|
|
4262
4276
|
name;
|
|
4263
4277
|
constructor(parentCssSelector, formName, name, page) {
|
|
4264
|
-
super(
|
|
4278
|
+
super({
|
|
4279
|
+
parentCssSelector,
|
|
4280
|
+
elementCssSelector: byTestIdCssSelector(createDocFilterTestId(formName, name)),
|
|
4281
|
+
titleCssSelector: byTestIdCssSelector(createLabelDocFilterTestId(formName, name)),
|
|
4282
|
+
page
|
|
4283
|
+
});
|
|
4265
4284
|
this.formName = formName;
|
|
4266
4285
|
this.name = name;
|
|
4267
4286
|
}
|
|
@@ -5001,11 +5020,7 @@ var SingleDateEditor = class extends BaseDateEditor {
|
|
|
5001
5020
|
}
|
|
5002
5021
|
async setValue(value) {
|
|
5003
5022
|
if (value instanceof Date) {
|
|
5004
|
-
await
|
|
5005
|
-
await this.setDateValue(value);
|
|
5006
|
-
const updatedValue = await this.getValue();
|
|
5007
|
-
return updatedValue.toDateString() === value.toDateString();
|
|
5008
|
-
}, this.page);
|
|
5023
|
+
await this.setDateValue(value);
|
|
5009
5024
|
} else {
|
|
5010
5025
|
throw new Error(`Value is incorrect. It should be a Date object`);
|
|
5011
5026
|
}
|
|
@@ -5207,11 +5222,25 @@ var EditorButton = class extends AbstractElementWithParent {
|
|
|
5207
5222
|
}
|
|
5208
5223
|
};
|
|
5209
5224
|
|
|
5225
|
+
// src/pageObjects/elements/EditorTitle.ts
|
|
5226
|
+
var CAPTION_TEXT_CLASS = " .caption-text";
|
|
5227
|
+
var EditorTitle = class extends AbstractElementWithParent {
|
|
5228
|
+
constructor({ parentCssSelector, elementCssSelector, page }) {
|
|
5229
|
+
super(parentCssSelector, elementCssSelector, page);
|
|
5230
|
+
}
|
|
5231
|
+
async getTitle() {
|
|
5232
|
+
const captionElement = this.getLocator().locator(CAPTION_TEXT_CLASS);
|
|
5233
|
+
return captionElement.innerText();
|
|
5234
|
+
}
|
|
5235
|
+
};
|
|
5236
|
+
|
|
5210
5237
|
// src/pageObjects/elements/AbstractEditor.ts
|
|
5211
5238
|
var AbstractEditor = class extends AbstractElementWithParent {
|
|
5212
5239
|
editor;
|
|
5213
|
-
|
|
5240
|
+
_titleCssSelector;
|
|
5241
|
+
constructor({ parentCssSelector, elementCssSelector, titleCssSelector, page }) {
|
|
5214
5242
|
super(parentCssSelector, elementCssSelector, page);
|
|
5243
|
+
this._titleCssSelector = titleCssSelector;
|
|
5215
5244
|
}
|
|
5216
5245
|
async initEditor() {
|
|
5217
5246
|
if (!this.editor) {
|
|
@@ -5307,12 +5336,30 @@ var AbstractEditor = class extends AbstractElementWithParent {
|
|
|
5307
5336
|
button(name) {
|
|
5308
5337
|
return new EditorButton(this.getFullCssSelector(), name, this.page);
|
|
5309
5338
|
}
|
|
5339
|
+
/**
|
|
5340
|
+
* Повертає загловок едітора
|
|
5341
|
+
* @example
|
|
5342
|
+
* expect(await formEdit.field('NumberFld').title()).toBe('Title1');
|
|
5343
|
+
* expect(await formEdit.field('TextFld').title()).toBe('Title2`);
|
|
5344
|
+
*/
|
|
5345
|
+
async title() {
|
|
5346
|
+
return new EditorTitle({
|
|
5347
|
+
elementCssSelector: this._titleCssSelector,
|
|
5348
|
+
parentCssSelector: this.parentCssSelector,
|
|
5349
|
+
page: this.page
|
|
5350
|
+
}).getTitle();
|
|
5351
|
+
}
|
|
5310
5352
|
};
|
|
5311
5353
|
|
|
5312
5354
|
// src/pageObjects/elements/FormField.ts
|
|
5313
5355
|
var FormField = class extends AbstractEditor {
|
|
5314
5356
|
constructor(parentCssSelector, formName, name, page) {
|
|
5315
|
-
super(
|
|
5357
|
+
super({
|
|
5358
|
+
parentCssSelector,
|
|
5359
|
+
elementCssSelector: byTestIdCssSelector(createFieldTestId(formName, name)),
|
|
5360
|
+
titleCssSelector: byTestIdCssSelector(createLabelFieldTestId(formName, name)),
|
|
5361
|
+
page
|
|
5362
|
+
});
|
|
5316
5363
|
}
|
|
5317
5364
|
};
|
|
5318
5365
|
|
|
@@ -5850,7 +5897,10 @@ var ToolbarItem = class extends AbstractElementWithParent {
|
|
|
5850
5897
|
async click() {
|
|
5851
5898
|
try {
|
|
5852
5899
|
await this.init();
|
|
5853
|
-
await
|
|
5900
|
+
await wait(async () => {
|
|
5901
|
+
const element = this._button.getLocator();
|
|
5902
|
+
return await element.isEnabled() && await element.isVisible();
|
|
5903
|
+
}, this.page);
|
|
5854
5904
|
await this._button.click();
|
|
5855
5905
|
} catch (error) {
|
|
5856
5906
|
throw new Error(`Cannot click on toolbar item: ${this._itemName}`);
|
|
@@ -5910,7 +5960,12 @@ var FormToolbar = class extends AbstractElementWithParent {
|
|
|
5910
5960
|
// src/pageObjects/elements/Filters/HeaderFilterField.ts
|
|
5911
5961
|
var HeaderFilterField = class extends AbstractEditor {
|
|
5912
5962
|
constructor(parentCssSelector, formName, name, page) {
|
|
5913
|
-
super(
|
|
5963
|
+
super({
|
|
5964
|
+
parentCssSelector,
|
|
5965
|
+
elementCssSelector: byTestIdCssSelector(createHeaderFilterTestId(formName, name)),
|
|
5966
|
+
titleCssSelector: "",
|
|
5967
|
+
page
|
|
5968
|
+
});
|
|
5914
5969
|
}
|
|
5915
5970
|
async getValue() {
|
|
5916
5971
|
return super.getValue();
|
|
@@ -1057,7 +1057,6 @@ var init_SingleDateEditor = __esm({
|
|
|
1057
1057
|
init_BaseDateEditor();
|
|
1058
1058
|
init_utils();
|
|
1059
1059
|
init_ClearButtonStrategy();
|
|
1060
|
-
init_src();
|
|
1061
1060
|
SingleDateEditor = class extends BaseDateEditor {
|
|
1062
1061
|
constructor(parentCssSelector, elementCssSelector, page) {
|
|
1063
1062
|
super(parentCssSelector, elementCssSelector, page);
|
|
@@ -1080,11 +1079,7 @@ var init_SingleDateEditor = __esm({
|
|
|
1080
1079
|
}
|
|
1081
1080
|
async setValue(value) {
|
|
1082
1081
|
if (value instanceof Date) {
|
|
1083
|
-
await
|
|
1084
|
-
await this.setDateValue(value);
|
|
1085
|
-
const updatedValue = await this.getValue();
|
|
1086
|
-
return updatedValue.toDateString() === value.toDateString();
|
|
1087
|
-
}, this.page);
|
|
1082
|
+
await this.setDateValue(value);
|
|
1088
1083
|
} else {
|
|
1089
1084
|
throw new Error(`Value is incorrect. It should be a Date object`);
|
|
1090
1085
|
}
|
|
@@ -1385,6 +1380,15 @@ function createSubSystemTestId(itemName) {
|
|
|
1385
1380
|
function createEditorButtonTestId(itemName) {
|
|
1386
1381
|
return `${"editor-button" /* EDITOR_BUTTON */}-${itemName}`;
|
|
1387
1382
|
}
|
|
1383
|
+
function createLabelFieldTestId(formName, itemName) {
|
|
1384
|
+
return `${"label" /* LABEL */}-${createFieldTestId(formName, itemName)}`;
|
|
1385
|
+
}
|
|
1386
|
+
function createLabelDocFilterTestId(formName, itemName) {
|
|
1387
|
+
return `${"label" /* LABEL */}-${createDocFilterTestId(formName, itemName)}`;
|
|
1388
|
+
}
|
|
1389
|
+
function createLabelLayoutFilterTestId(formName, itemName) {
|
|
1390
|
+
return `${"label" /* LABEL */}-${createLayoutFilterTestId(formName, itemName)}`;
|
|
1391
|
+
}
|
|
1388
1392
|
var init_createDataTestId = __esm({
|
|
1389
1393
|
"src/utils/createDataTestId.ts"() {
|
|
1390
1394
|
"use strict";
|
|
@@ -1863,7 +1867,7 @@ var init_AbstractForm = __esm({
|
|
|
1863
1867
|
async exists() {
|
|
1864
1868
|
try {
|
|
1865
1869
|
const container = this.page.locator(this.containerCssSelector);
|
|
1866
|
-
await waitElementIsVisible_default({ locator: container });
|
|
1870
|
+
await waitElementIsVisible_default({ locator: container, timeout: 3e3 });
|
|
1867
1871
|
return true;
|
|
1868
1872
|
} catch (error) {
|
|
1869
1873
|
return false;
|
|
@@ -2230,6 +2234,25 @@ var init_EditorButton = __esm({
|
|
|
2230
2234
|
}
|
|
2231
2235
|
});
|
|
2232
2236
|
|
|
2237
|
+
// src/pageObjects/elements/EditorTitle.ts
|
|
2238
|
+
var CAPTION_TEXT_CLASS, EditorTitle;
|
|
2239
|
+
var init_EditorTitle = __esm({
|
|
2240
|
+
"src/pageObjects/elements/EditorTitle.ts"() {
|
|
2241
|
+
"use strict";
|
|
2242
|
+
init_AbstractElementWithParent();
|
|
2243
|
+
CAPTION_TEXT_CLASS = " .caption-text";
|
|
2244
|
+
EditorTitle = class extends AbstractElementWithParent {
|
|
2245
|
+
constructor({ parentCssSelector, elementCssSelector, page }) {
|
|
2246
|
+
super(parentCssSelector, elementCssSelector, page);
|
|
2247
|
+
}
|
|
2248
|
+
async getTitle() {
|
|
2249
|
+
const captionElement = this.getLocator().locator(CAPTION_TEXT_CLASS);
|
|
2250
|
+
return captionElement.innerText();
|
|
2251
|
+
}
|
|
2252
|
+
};
|
|
2253
|
+
}
|
|
2254
|
+
});
|
|
2255
|
+
|
|
2233
2256
|
// src/pageObjects/elements/AbstractEditor.ts
|
|
2234
2257
|
var AbstractEditor;
|
|
2235
2258
|
var init_AbstractEditor2 = __esm({
|
|
@@ -2238,10 +2261,13 @@ var init_AbstractEditor2 = __esm({
|
|
|
2238
2261
|
init_AbstractElementWithParent();
|
|
2239
2262
|
init_Editors();
|
|
2240
2263
|
init_EditorButton();
|
|
2264
|
+
init_EditorTitle();
|
|
2241
2265
|
AbstractEditor = class extends AbstractElementWithParent {
|
|
2242
2266
|
editor;
|
|
2243
|
-
|
|
2267
|
+
_titleCssSelector;
|
|
2268
|
+
constructor({ parentCssSelector, elementCssSelector, titleCssSelector, page }) {
|
|
2244
2269
|
super(parentCssSelector, elementCssSelector, page);
|
|
2270
|
+
this._titleCssSelector = titleCssSelector;
|
|
2245
2271
|
}
|
|
2246
2272
|
async initEditor() {
|
|
2247
2273
|
if (!this.editor) {
|
|
@@ -2337,6 +2363,19 @@ var init_AbstractEditor2 = __esm({
|
|
|
2337
2363
|
button(name) {
|
|
2338
2364
|
return new EditorButton(this.getFullCssSelector(), name, this.page);
|
|
2339
2365
|
}
|
|
2366
|
+
/**
|
|
2367
|
+
* Повертає загловок едітора
|
|
2368
|
+
* @example
|
|
2369
|
+
* expect(await formEdit.field('NumberFld').title()).toBe('Title1');
|
|
2370
|
+
* expect(await formEdit.field('TextFld').title()).toBe('Title2`);
|
|
2371
|
+
*/
|
|
2372
|
+
async title() {
|
|
2373
|
+
return new EditorTitle({
|
|
2374
|
+
elementCssSelector: this._titleCssSelector,
|
|
2375
|
+
parentCssSelector: this.parentCssSelector,
|
|
2376
|
+
page: this.page
|
|
2377
|
+
}).getTitle();
|
|
2378
|
+
}
|
|
2340
2379
|
};
|
|
2341
2380
|
}
|
|
2342
2381
|
});
|
|
@@ -2351,7 +2390,12 @@ var init_FormField = __esm({
|
|
|
2351
2390
|
init_AbstractEditor2();
|
|
2352
2391
|
FormField = class extends AbstractEditor {
|
|
2353
2392
|
constructor(parentCssSelector, formName, name, page) {
|
|
2354
|
-
super(
|
|
2393
|
+
super({
|
|
2394
|
+
parentCssSelector,
|
|
2395
|
+
elementCssSelector: byTestIdCssSelector(createFieldTestId(formName, name)),
|
|
2396
|
+
titleCssSelector: byTestIdCssSelector(createLabelFieldTestId(formName, name)),
|
|
2397
|
+
page
|
|
2398
|
+
});
|
|
2355
2399
|
}
|
|
2356
2400
|
};
|
|
2357
2401
|
}
|
|
@@ -2956,6 +3000,7 @@ var init_ToolbarItem = __esm({
|
|
|
2956
3000
|
init_locators();
|
|
2957
3001
|
init_ToolbarMenu();
|
|
2958
3002
|
init_waitElementIsVisible();
|
|
3003
|
+
init_wait();
|
|
2959
3004
|
GROUP_BUTTON_CLASS = "toolbar-group-button";
|
|
2960
3005
|
toolbarItemSelector = (form, name) => byTestIdCssSelector(`ftb-${form}-${name}`);
|
|
2961
3006
|
ToolbarItem = class extends AbstractElementWithParent {
|
|
@@ -2979,7 +3024,10 @@ var init_ToolbarItem = __esm({
|
|
|
2979
3024
|
async click() {
|
|
2980
3025
|
try {
|
|
2981
3026
|
await this.init();
|
|
2982
|
-
await
|
|
3027
|
+
await wait(async () => {
|
|
3028
|
+
const element = this._button.getLocator();
|
|
3029
|
+
return await element.isEnabled() && await element.isVisible();
|
|
3030
|
+
}, this.page);
|
|
2983
3031
|
await this._button.click();
|
|
2984
3032
|
} catch (error) {
|
|
2985
3033
|
throw new Error(`Cannot click on toolbar item: ${this._itemName}`);
|
|
@@ -3154,7 +3202,12 @@ var init_FormFilterField = __esm({
|
|
|
3154
3202
|
formName;
|
|
3155
3203
|
name;
|
|
3156
3204
|
constructor(parentCssSelector, formName, name, page) {
|
|
3157
|
-
super(
|
|
3205
|
+
super({
|
|
3206
|
+
parentCssSelector,
|
|
3207
|
+
elementCssSelector: byTestIdCssSelector(createLayoutFilterTestId(formName, name)),
|
|
3208
|
+
titleCssSelector: byTestIdCssSelector(createLabelLayoutFilterTestId(formName, name)),
|
|
3209
|
+
page
|
|
3210
|
+
});
|
|
3158
3211
|
this.formName = formName;
|
|
3159
3212
|
this.name = name;
|
|
3160
3213
|
}
|
|
@@ -3268,7 +3321,12 @@ var init_PanelFilterField = __esm({
|
|
|
3268
3321
|
formName;
|
|
3269
3322
|
name;
|
|
3270
3323
|
constructor(parentCssSelector, formName, name, page) {
|
|
3271
|
-
super(
|
|
3324
|
+
super({
|
|
3325
|
+
parentCssSelector,
|
|
3326
|
+
elementCssSelector: byTestIdCssSelector(createDocFilterTestId(formName, name)),
|
|
3327
|
+
titleCssSelector: byTestIdCssSelector(createLabelDocFilterTestId(formName, name)),
|
|
3328
|
+
page
|
|
3329
|
+
});
|
|
3272
3330
|
this.formName = formName;
|
|
3273
3331
|
this.name = name;
|
|
3274
3332
|
}
|
|
@@ -3436,7 +3494,12 @@ var init_HeaderFilterField = __esm({
|
|
|
3436
3494
|
init_AbstractEditor2();
|
|
3437
3495
|
HeaderFilterField = class extends AbstractEditor {
|
|
3438
3496
|
constructor(parentCssSelector, formName, name, page) {
|
|
3439
|
-
super(
|
|
3497
|
+
super({
|
|
3498
|
+
parentCssSelector,
|
|
3499
|
+
elementCssSelector: byTestIdCssSelector(createHeaderFilterTestId(formName, name)),
|
|
3500
|
+
titleCssSelector: "",
|
|
3501
|
+
page
|
|
3502
|
+
});
|
|
3440
3503
|
}
|
|
3441
3504
|
async getValue() {
|
|
3442
3505
|
return super.getValue();
|
|
@@ -347,7 +347,13 @@ declare class EditorButton extends AbstractElementWithParent {
|
|
|
347
347
|
|
|
348
348
|
declare class AbstractEditor extends AbstractElementWithParent implements Editor {
|
|
349
349
|
protected editor: Editor;
|
|
350
|
-
|
|
350
|
+
protected _titleCssSelector: string;
|
|
351
|
+
constructor({ parentCssSelector, elementCssSelector, titleCssSelector, page }: {
|
|
352
|
+
parentCssSelector: string;
|
|
353
|
+
elementCssSelector: string;
|
|
354
|
+
titleCssSelector: string;
|
|
355
|
+
page: Page;
|
|
356
|
+
});
|
|
351
357
|
protected initEditor(): Promise<void>;
|
|
352
358
|
/**
|
|
353
359
|
* Возвращает значение в поле
|
|
@@ -404,6 +410,13 @@ declare class AbstractEditor extends AbstractElementWithParent implements Editor
|
|
|
404
410
|
* await form.field('Name').button('editorButton).click()
|
|
405
411
|
*/
|
|
406
412
|
button(name: string): EditorButton;
|
|
413
|
+
/**
|
|
414
|
+
* Повертає загловок едітора
|
|
415
|
+
* @example
|
|
416
|
+
* expect(await formEdit.field('NumberFld').title()).toBe('Title1');
|
|
417
|
+
* expect(await formEdit.field('TextFld').title()).toBe('Title2`);
|
|
418
|
+
*/
|
|
419
|
+
title(): Promise<string>;
|
|
407
420
|
}
|
|
408
421
|
|
|
409
422
|
declare class FormField extends AbstractEditor {
|
|
@@ -347,7 +347,13 @@ declare class EditorButton extends AbstractElementWithParent {
|
|
|
347
347
|
|
|
348
348
|
declare class AbstractEditor extends AbstractElementWithParent implements Editor {
|
|
349
349
|
protected editor: Editor;
|
|
350
|
-
|
|
350
|
+
protected _titleCssSelector: string;
|
|
351
|
+
constructor({ parentCssSelector, elementCssSelector, titleCssSelector, page }: {
|
|
352
|
+
parentCssSelector: string;
|
|
353
|
+
elementCssSelector: string;
|
|
354
|
+
titleCssSelector: string;
|
|
355
|
+
page: Page;
|
|
356
|
+
});
|
|
351
357
|
protected initEditor(): Promise<void>;
|
|
352
358
|
/**
|
|
353
359
|
* Возвращает значение в поле
|
|
@@ -404,6 +410,13 @@ declare class AbstractEditor extends AbstractElementWithParent implements Editor
|
|
|
404
410
|
* await form.field('Name').button('editorButton).click()
|
|
405
411
|
*/
|
|
406
412
|
button(name: string): EditorButton;
|
|
413
|
+
/**
|
|
414
|
+
* Повертає загловок едітора
|
|
415
|
+
* @example
|
|
416
|
+
* expect(await formEdit.field('NumberFld').title()).toBe('Title1');
|
|
417
|
+
* expect(await formEdit.field('TextFld').title()).toBe('Title2`);
|
|
418
|
+
*/
|
|
419
|
+
title(): Promise<string>;
|
|
407
420
|
}
|
|
408
421
|
|
|
409
422
|
declare class FormField extends AbstractEditor {
|