@bigbinary/neeto-playwright-commons 1.9.25 → 1.9.26
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/index.cjs.js +15 -15
- package/index.cjs.js.map +1 -1
- package/index.d.ts +146 -10
- package/index.js +15 -15
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -2246,15 +2246,44 @@ interface SearchAndSelectProps {
|
|
|
2246
2246
|
interface MergeTagsViaUIProps {
|
|
2247
2247
|
sourceTagName: string;
|
|
2248
2248
|
destinationTagName: string;
|
|
2249
|
-
|
|
2250
|
-
tagsBreadcrumbLabel: string;
|
|
2249
|
+
tagsBreadcrumbSelector: string;
|
|
2251
2250
|
}
|
|
2252
2251
|
declare class TagsPage {
|
|
2253
2252
|
page: Page;
|
|
2254
2253
|
neetoPlaywrightUtilities: CustomCommands;
|
|
2255
2254
|
t: TFunction;
|
|
2256
2255
|
constructor(page: Page, neetoPlaywrightUtilities: CustomCommands);
|
|
2256
|
+
/**
|
|
2257
|
+
*
|
|
2258
|
+
* Used to search and verify the tags by providing tag name as the search term. It takes the following parameters:
|
|
2259
|
+
*
|
|
2260
|
+
* tagName (required): The name of the tag to be searched.
|
|
2261
|
+
*
|
|
2262
|
+
* @example
|
|
2263
|
+
*
|
|
2264
|
+
* await tagsPage.searchAndVerifyTags("tagName");
|
|
2265
|
+
* @endexample
|
|
2266
|
+
*/
|
|
2257
2267
|
searchAndVerifyTags: (tagName: string) => Promise<void>;
|
|
2268
|
+
/**
|
|
2269
|
+
*
|
|
2270
|
+
* Used to add a tag using the add button in the header. It takes the following parameters:
|
|
2271
|
+
*
|
|
2272
|
+
* tagName (required): The name of the tag to be added.
|
|
2273
|
+
*
|
|
2274
|
+
* addTagsLabel (required): The label of the add new tags pane header.
|
|
2275
|
+
*
|
|
2276
|
+
* tagsResponseUrl (required): the response URL of tags when the save button is clicked while adding new tags.
|
|
2277
|
+
*
|
|
2278
|
+
* @example
|
|
2279
|
+
*
|
|
2280
|
+
* await tagsPage.addTagViaUI({
|
|
2281
|
+
* tagName: "tagName",
|
|
2282
|
+
* addTagsLabel: "Add new tag",
|
|
2283
|
+
* tagsResponseUrl: API_ROUTES.tags.index,
|
|
2284
|
+
* });
|
|
2285
|
+
* @endexample
|
|
2286
|
+
*/
|
|
2258
2287
|
addTagViaUI: ({
|
|
2259
2288
|
tagName,
|
|
2260
2289
|
addTagsLabel,
|
|
@@ -2264,7 +2293,36 @@ declare class TagsPage {
|
|
|
2264
2293
|
addTagsLabel: string;
|
|
2265
2294
|
tagsResponseUrl: string;
|
|
2266
2295
|
}) => Promise<void>;
|
|
2296
|
+
/**
|
|
2297
|
+
*
|
|
2298
|
+
* Used to filter tags using the filter button in the header. It takes the following parameters:
|
|
2299
|
+
*
|
|
2300
|
+
* tagName (required): The name of the tag to be filtered.
|
|
2301
|
+
*
|
|
2302
|
+
* @example
|
|
2303
|
+
*
|
|
2304
|
+
* await tagsPage.filterTagsViaUI({
|
|
2305
|
+
* tagName: "tagName",
|
|
2306
|
+
* });
|
|
2307
|
+
* @endexample
|
|
2308
|
+
*/
|
|
2267
2309
|
filterTagsViaUI: (tagName: string) => Promise<void>;
|
|
2310
|
+
/**
|
|
2311
|
+
*
|
|
2312
|
+
* Used to edit a tag using the edit button in row dropdown. It takes the following parameters:
|
|
2313
|
+
*
|
|
2314
|
+
* tagName (required): The name of the tag to be edited.
|
|
2315
|
+
*
|
|
2316
|
+
* newTagName (required): The new name of the tag.
|
|
2317
|
+
*
|
|
2318
|
+
* @example
|
|
2319
|
+
*
|
|
2320
|
+
* await tagsPage.editTagViaUI({
|
|
2321
|
+
* tagName: "tagName",
|
|
2322
|
+
* newTagName: "newTagName",
|
|
2323
|
+
* });
|
|
2324
|
+
* @endexample
|
|
2325
|
+
*/
|
|
2268
2326
|
editTagViaUI: ({
|
|
2269
2327
|
tagName,
|
|
2270
2328
|
newTagName
|
|
@@ -2272,27 +2330,105 @@ declare class TagsPage {
|
|
|
2272
2330
|
tagName: string;
|
|
2273
2331
|
newTagName: string;
|
|
2274
2332
|
}) => Promise<void>;
|
|
2333
|
+
/**
|
|
2334
|
+
*
|
|
2335
|
+
* Used to delete a tag using the delete button in row dropdown. It takes the following parameters:
|
|
2336
|
+
*
|
|
2337
|
+
* tagName (required): The name of the tag to be deleted.
|
|
2338
|
+
*
|
|
2339
|
+
* @example
|
|
2340
|
+
*
|
|
2341
|
+
* await tagsPage.deleteTagViaUI({
|
|
2342
|
+
* tagName: "tagName",
|
|
2343
|
+
* });
|
|
2344
|
+
* @endexample
|
|
2345
|
+
*/
|
|
2275
2346
|
deleteTagViaUI: (tagName: string) => Promise<void>;
|
|
2276
|
-
|
|
2347
|
+
/**
|
|
2348
|
+
*
|
|
2349
|
+
* Used to add tags via API request. It takes the following parameters:
|
|
2350
|
+
*
|
|
2351
|
+
* name (required): The name of the tag to be added.
|
|
2352
|
+
*
|
|
2353
|
+
* description (optional): The description of the tag to be added. Default is "".
|
|
2354
|
+
*
|
|
2355
|
+
* tagsRequestUrl (required): The URL of the tags API endpoint.
|
|
2356
|
+
*
|
|
2357
|
+
* @example
|
|
2358
|
+
*
|
|
2359
|
+
* await tagsPage.addTagsViaRequest({
|
|
2360
|
+
* name: "tagName",
|
|
2361
|
+
* description: "tagDescription",
|
|
2362
|
+
* tagsRequestUrl: ROUTES.tags.index,
|
|
2363
|
+
* });
|
|
2364
|
+
* @endexample
|
|
2365
|
+
*/
|
|
2366
|
+
addTagsViaRequest: ({
|
|
2277
2367
|
name,
|
|
2278
2368
|
description,
|
|
2279
|
-
|
|
2369
|
+
tagsRequestUrl
|
|
2280
2370
|
}: {
|
|
2281
2371
|
name: string;
|
|
2282
|
-
description
|
|
2283
|
-
|
|
2372
|
+
description?: string;
|
|
2373
|
+
tagsRequestUrl: string;
|
|
2284
2374
|
}) => Promise<playwright_core.APIResponse | undefined>;
|
|
2285
|
-
|
|
2375
|
+
/**
|
|
2376
|
+
*
|
|
2377
|
+
* Used to navigate to merge tags page.
|
|
2378
|
+
*
|
|
2379
|
+
* @example
|
|
2380
|
+
*
|
|
2381
|
+
* await tagsPage.navigateToMergeTagsPage();
|
|
2382
|
+
* @endexample
|
|
2383
|
+
*/
|
|
2384
|
+
navigateToMergeTagsPage: () => Promise<void>;
|
|
2385
|
+
/**
|
|
2386
|
+
*
|
|
2387
|
+
* Used to search a tag and select that tag in the tags table. It takes the following parameters:
|
|
2388
|
+
*
|
|
2389
|
+
* selector (required): The selector used to search a tag.
|
|
2390
|
+
*
|
|
2391
|
+
* tagName (required): The name of the tag to be searched and selected.
|
|
2392
|
+
*
|
|
2393
|
+
* rowSelector (required): The selector of the row used to select a tag.
|
|
2394
|
+
*
|
|
2395
|
+
* @example
|
|
2396
|
+
*
|
|
2397
|
+
* await tagsPage.searchAndSelect({
|
|
2398
|
+
* selector: MERGE_TAGS_SELECTORS.sourceSearchTextField,
|
|
2399
|
+
* tagName: "tagName",
|
|
2400
|
+
* rowSelector: MERGE_TAGS_SELECTORS.sourceTagRow,
|
|
2401
|
+
* });
|
|
2402
|
+
* @endexample
|
|
2403
|
+
*/
|
|
2286
2404
|
searchAndSelect: ({
|
|
2287
2405
|
selector,
|
|
2288
2406
|
tagName,
|
|
2289
2407
|
rowSelector
|
|
2290
2408
|
}: SearchAndSelectProps) => Promise<void>;
|
|
2291
|
-
|
|
2409
|
+
/**
|
|
2410
|
+
*
|
|
2411
|
+
* Used to merge tags and verify the merged tags in tags table. It takes the following parameters:
|
|
2412
|
+
*
|
|
2413
|
+
* sourceTagName (required): The name of the source tag to be merged.
|
|
2414
|
+
*
|
|
2415
|
+
* destinationTagName (required): The name of the destination tag to be merged.
|
|
2416
|
+
*
|
|
2417
|
+
* tagsBreadcrumbSelector (required): The selector of the tags breadcrumb used to redirect to the tags page.
|
|
2418
|
+
*
|
|
2419
|
+
* @example
|
|
2420
|
+
*
|
|
2421
|
+
* tagsPage.mergeAndVerifyTagsViaUI({
|
|
2422
|
+
* sourceTagName: "sourceTagName",
|
|
2423
|
+
* destinationTagName: "destinationTagName",
|
|
2424
|
+
* tagsBreadcrumbSelector: SETTINGS_SELECTORS.ticketTagsBreadcrumb,
|
|
2425
|
+
* })
|
|
2426
|
+
* @endexample
|
|
2427
|
+
*/
|
|
2428
|
+
mergeAndVerifyTagsViaUI: ({
|
|
2292
2429
|
sourceTagName,
|
|
2293
2430
|
destinationTagName,
|
|
2294
|
-
|
|
2295
|
-
tagsBreadcrumbLabel
|
|
2431
|
+
tagsBreadcrumbSelector
|
|
2296
2432
|
}: MergeTagsViaUIProps) => Promise<void>;
|
|
2297
2433
|
}
|
|
2298
2434
|
/**
|
package/index.js
CHANGED
|
@@ -14575,7 +14575,7 @@ class EditorPage {
|
|
|
14575
14575
|
await this.neetoPlaywrightUtilities.interceptMultipleResponses({
|
|
14576
14576
|
responseUrl: ROUTES.attachment,
|
|
14577
14577
|
});
|
|
14578
|
-
await this.neetoPlaywrightUtilities.
|
|
14578
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
14579
14579
|
await expect(this.attachmentPreview).toBeVisible();
|
|
14580
14580
|
await this.attachmentPreview
|
|
14581
14581
|
.getByTestId(COMMON_SELECTORS.dropdownIcon)
|
|
@@ -14587,7 +14587,7 @@ class EditorPage {
|
|
|
14587
14587
|
.getByTestId(COMMON_SELECTORS.alertModalSubmitButton)
|
|
14588
14588
|
.click();
|
|
14589
14589
|
}
|
|
14590
|
-
await this.neetoPlaywrightUtilities.
|
|
14590
|
+
await this.neetoPlaywrightUtilities.verifyToast({
|
|
14591
14591
|
message: ATTACHMENT_DELETION_TOASTR_MESSAGE,
|
|
14592
14592
|
});
|
|
14593
14593
|
if (await this.imageUploadOption.isVisible()) {
|
|
@@ -14600,7 +14600,7 @@ class EditorPage {
|
|
|
14600
14600
|
const imagePath = Path.join(__dirname, filePath);
|
|
14601
14601
|
await fileUploader.setFiles(imagePath);
|
|
14602
14602
|
await expect(this.imageWrapper).toBeVisible({ timeout: 15000 });
|
|
14603
|
-
await this.neetoPlaywrightUtilities.
|
|
14603
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
14604
14604
|
await this.imageWrapper
|
|
14605
14605
|
.getByTestId(COMMON_SELECTORS.dropdownIcon)
|
|
14606
14606
|
.click();
|
|
@@ -14637,7 +14637,7 @@ class EditorPage {
|
|
|
14637
14637
|
.getByTestId(COMMON_SELECTORS.selectOption(this.t("neetoRules.labels.feedback")))
|
|
14638
14638
|
.click();
|
|
14639
14639
|
await this.page.getByTestId(NEETO_EDITOR_SELECTORS.applyButton).click();
|
|
14640
|
-
await this.neetoPlaywrightUtilities.
|
|
14640
|
+
await this.neetoPlaywrightUtilities.verifyToast({
|
|
14641
14641
|
message: cannedResponseSuccessMessage,
|
|
14642
14642
|
});
|
|
14643
14643
|
}
|
|
@@ -15390,7 +15390,7 @@ class TagsPage {
|
|
|
15390
15390
|
});
|
|
15391
15391
|
await this.page.getByTestId(TAGS_SELECTORS.submitButton).click();
|
|
15392
15392
|
await waitForSave;
|
|
15393
|
-
await this.neetoPlaywrightUtilities.
|
|
15393
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
15394
15394
|
await this.searchAndVerifyTags(tagName);
|
|
15395
15395
|
};
|
|
15396
15396
|
this.filterTagsViaUI = async (tagName) => {
|
|
@@ -15422,7 +15422,7 @@ class TagsPage {
|
|
|
15422
15422
|
.getByTestId(TAGS_SELECTORS.tagNameTextField)
|
|
15423
15423
|
.fill(newTagName);
|
|
15424
15424
|
await this.page.getByTestId(TAGS_SELECTORS.submitButton).click();
|
|
15425
|
-
await this.neetoPlaywrightUtilities.
|
|
15425
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
15426
15426
|
await expect(this.page.getByRole("row", { name: tagName })).toBeHidden();
|
|
15427
15427
|
await expect(this.page.getByRole("row", { name: newTagName })).toBeVisible();
|
|
15428
15428
|
};
|
|
@@ -15435,18 +15435,18 @@ class TagsPage {
|
|
|
15435
15435
|
await this.page
|
|
15436
15436
|
.getByTestId(COMMON_SELECTORS.alertModalSubmitButton)
|
|
15437
15437
|
.click();
|
|
15438
|
-
await this.neetoPlaywrightUtilities.
|
|
15438
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
15439
15439
|
await expect(this.page.getByRole("row", { name: tagName })).toBeHidden();
|
|
15440
15440
|
};
|
|
15441
|
-
this.
|
|
15442
|
-
url:
|
|
15441
|
+
this.addTagsViaRequest = ({ name, description = "", tagsRequestUrl, }) => this.neetoPlaywrightUtilities.apiRequest({
|
|
15442
|
+
url: tagsRequestUrl,
|
|
15443
15443
|
body: { name, description },
|
|
15444
15444
|
method: "post",
|
|
15445
15445
|
});
|
|
15446
|
-
this.navigateToMergeTagsPage = async (
|
|
15446
|
+
this.navigateToMergeTagsPage = async () => {
|
|
15447
15447
|
await this.page.getByTestId(MERGE_TAGS_SELECTORS.mergeTagsButton).click();
|
|
15448
15448
|
await this.neetoPlaywrightUtilities.waitForPageLoad();
|
|
15449
|
-
await expect(this.page.getByTestId(COMMON_SELECTORS.heading)).toHaveText(
|
|
15449
|
+
await expect(this.page.getByTestId(COMMON_SELECTORS.heading)).toHaveText(this.t("neetoTags.common.mergeTag_other"));
|
|
15450
15450
|
};
|
|
15451
15451
|
this.searchAndSelect = async ({ selector, tagName, rowSelector, }) => {
|
|
15452
15452
|
await this.page.getByTestId(selector).fill(tagName);
|
|
@@ -15455,7 +15455,7 @@ class TagsPage {
|
|
|
15455
15455
|
.filter({ hasText: tagName })
|
|
15456
15456
|
.click();
|
|
15457
15457
|
};
|
|
15458
|
-
this.
|
|
15458
|
+
this.mergeAndVerifyTagsViaUI = async ({ sourceTagName, destinationTagName, tagsBreadcrumbSelector, }) => {
|
|
15459
15459
|
await this.searchAndSelect({
|
|
15460
15460
|
selector: MERGE_TAGS_SELECTORS.sourceSearchTextField,
|
|
15461
15461
|
tagName: sourceTagName,
|
|
@@ -15467,10 +15467,10 @@ class TagsPage {
|
|
|
15467
15467
|
rowSelector: MERGE_TAGS_SELECTORS.destinationTagRow,
|
|
15468
15468
|
});
|
|
15469
15469
|
await this.page.getByTestId(MERGE_TAGS_SELECTORS.mergeButton).click();
|
|
15470
|
-
await expect(this.page.getByTestId(COMMON_SELECTORS.modalHeader)).toHaveText(
|
|
15470
|
+
await expect(this.page.getByTestId(COMMON_SELECTORS.modalHeader)).toHaveText(this.t("neetoTags.common.mergeTag_other"));
|
|
15471
15471
|
await this.page.getByTestId(MERGE_TAGS_SELECTORS.proceedButton).click();
|
|
15472
|
-
await this.neetoPlaywrightUtilities.
|
|
15473
|
-
await this.page.getByTestId(
|
|
15472
|
+
await this.neetoPlaywrightUtilities.verifyToast();
|
|
15473
|
+
await this.page.getByTestId(tagsBreadcrumbSelector).click();
|
|
15474
15474
|
await expect(this.page.getByText(sourceTagName)).toBeHidden();
|
|
15475
15475
|
await expect(this.page.getByText(destinationTagName)).toBeVisible();
|
|
15476
15476
|
};
|