@bigbinary/neeto-playwright-commons 1.9.0 → 1.9.1

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.d.ts CHANGED
@@ -62,6 +62,12 @@ interface SelectOptionFromDropdownParams {
62
62
  retryTimeout: number;
63
63
  }>;
64
64
  }
65
+ interface SearchAndVerifyProps {
66
+ searchTerm: string;
67
+ countSelector: string;
68
+ searchInputSelector?: string;
69
+ countText: string;
70
+ }
65
71
  declare class CustomCommands {
66
72
  page: Page;
67
73
  responses: string[];
@@ -197,6 +203,26 @@ declare class CustomCommands {
197
203
  * @endexample
198
204
  */
199
205
  verifyFieldValue: VerifyFieldValue;
206
+ /**
207
+ *
208
+ * Command to search for a term and verify the results and its count.
209
+ *
210
+ * @example
211
+ *
212
+ * await neetoPlaywrightUtilities.searchAndVerify({
213
+ * searchTerm: "searchTerm",
214
+ * searchInputSelector: COMMON_SELECTORS.inputField,
215
+ * countSelector: COMMON_SELECTORS.count,
216
+ * countText: "43 items",
217
+ * });
218
+ * @endexample
219
+ */
220
+ searchAndVerify: ({
221
+ searchTerm,
222
+ searchInputSelector,
223
+ countSelector,
224
+ countText
225
+ }: SearchAndVerifyProps) => Promise<void>;
200
226
  }
201
227
  interface EmailContentParams {
202
228
  email: string;
@@ -882,6 +908,7 @@ declare const NEETO_FILTERS_SELECTORS: {
882
908
  allMenubarBlock: string;
883
909
  filtersEmailFilter: string;
884
910
  paneModalCrossIcon: string;
911
+ searchTermBlock: string;
885
912
  };
886
913
  declare const HELP_CENTER_SELECTORS: {
887
914
  helpButton: string;
package/index.js CHANGED
@@ -26,6 +26,25 @@ import require$$1$2 from 'string_decoder';
26
26
  import require$$4$1 from 'timers';
27
27
  import require$$3$2 from 'crypto';
28
28
 
29
+ const NEETO_FILTERS_SELECTORS = {
30
+ emailSelectContainer: "email-select-container-wrapper",
31
+ filterPaneHeading: "neeto-filters-pane-header",
32
+ neetoFiltersEmailBlock: "neeto-filters-email-block",
33
+ neetoFiltersRoleBlock: "neeto-filters-role-block",
34
+ neetoFiltersBarClearButton: "neeto-filters-bar-clear-btn",
35
+ neetoFiltersNameFilterField: "neeto-filters-name-filter",
36
+ neetoFilterNameBlock: "neeto-filters-name-block",
37
+ roleSelectContainer: "role-select-container-wrapper",
38
+ filterButton: "neeto-filters-toggle-btn",
39
+ filtersClearButton: "neeto-filters-clear-btn",
40
+ filterDoneButton: "neeto-filters-done-btn",
41
+ filteredMembersCount: "ntm-filtered-members-count",
42
+ allMenubarBlock: "ntm-members-menubar-all-block",
43
+ filtersEmailFilter: "neeto-filters-email-filter",
44
+ paneModalCrossIcon: "neeto-filters-close-button",
45
+ searchTermBlock: "neeto-filters-search-term-block",
46
+ };
47
+
29
48
  const ENVIRONMENT = {
30
49
  development: "development",
31
50
  staging: "staging",
@@ -2586,6 +2605,16 @@ class CustomCommands {
2586
2605
  ? Promise.all(values.map(value => verifyEachFieldValue(value)))
2587
2606
  : verifyEachFieldValue(values);
2588
2607
  };
2608
+ this.searchAndVerify = async ({ searchTerm, searchInputSelector = COMMON_SELECTORS.inputField, countSelector, countText, }) => {
2609
+ await expect(async () => {
2610
+ await this.page.getByTestId(searchInputSelector).fill(searchTerm);
2611
+ await expect(this.page.getByTestId(NEETO_FILTERS_SELECTORS.searchTermBlock)).toBeVisible();
2612
+ await this.page.reload({ waitUntil: "load" });
2613
+ await expect(this.page.getByTestId(COMMON_SELECTORS.pageLoader)).toBeHidden({ timeout: 10000 });
2614
+ await expect(this.page.getByRole("cell", { name: searchTerm })).toBeVisible();
2615
+ await expect(this.page.getByTestId(countSelector)).toContainText(countText);
2616
+ }).toPass({ timeout: 15000 });
2617
+ };
2589
2618
  this.page = page;
2590
2619
  this.responses = [];
2591
2620
  this.request = request;
@@ -13776,24 +13805,6 @@ const NEETO_EDITOR_SELECTORS = {
13776
13805
  submitLinkButton: "neeto-editor-add-link",
13777
13806
  };
13778
13807
 
13779
- const NEETO_FILTERS_SELECTORS = {
13780
- emailSelectContainer: "email-select-container-wrapper",
13781
- filterPaneHeading: "neeto-filters-pane-header",
13782
- neetoFiltersEmailBlock: "neeto-filters-email-block",
13783
- neetoFiltersRoleBlock: "neeto-filters-role-block",
13784
- neetoFiltersBarClearButton: "neeto-filters-bar-clear-btn",
13785
- neetoFiltersNameFilterField: "neeto-filters-name-filter",
13786
- neetoFilterNameBlock: "neeto-filters-name-block",
13787
- roleSelectContainer: "role-select-container-wrapper",
13788
- filterButton: "neeto-filters-toggle-btn",
13789
- filtersClearButton: "neeto-filters-clear-btn",
13790
- filterDoneButton: "neeto-filters-done-btn",
13791
- filteredMembersCount: "ntm-filtered-members-count",
13792
- allMenubarBlock: "ntm-members-menubar-all-block",
13793
- filtersEmailFilter: "neeto-filters-email-filter",
13794
- paneModalCrossIcon: "neeto-filters-close-button",
13795
- };
13796
-
13797
13808
  const MEMBER_SELECTORS = {
13798
13809
  membersTab: "members-nav-tab",
13799
13810
  newButton: "ntm-add-member-button",