Advertisement
djbob2000

Untitled

May 31st, 2025
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { test } from "@fernir2/saas-kit/test/fixtures";
  2. import { UiTester, setUiTestPage } from "@fernir2/saas-kit/test/fd-test-ui-tester";
  3. import { elements, elementPrefixes, elementSuffixes } from "@fernir2/saas-kit/src/meta/constants";
  4. import { tableElementSuffixes } from "@fernir2/saas-kit/src/fd/fd-component-toolbox";
  5. import { assertElementHaveCheckmark } from "@fernir2/saas-kit/fd-meta-tester-ui/page-objects";
  6. import { iconNames } from "@fernir2/saas-kit/fd-component-toolbox/icon";
  7.  
  8. test(
  9.     "Contact - when selecting multiple checkboxes in multi-browser " +
  10.         "then checkboxes are selected and relations are added",
  11.     async ({ page }) => {
  12.         // Arrange
  13.         setUiTestPage(page);
  14.         const uiTester = new UiTester(page);
  15.         const externalUrl = "https://saas-kit-ten.vercel.app";
  16.  
  17.         // Login to external site
  18.         await page.goto(externalUrl + "/sign-in");
  19.         await page.waitForLoadState("networkidle");
  20.         await page.getByRole("button", { name: "Sign In" }).click();
  21.         // await page.waitForLoadState("networkidle");
  22.  
  23.         // Navigate to Contacts page
  24.         // await page.goto(externalUrl + "/view?resource=Contact");
  25.         // await page.waitForLoadState("networkidle");
  26.  
  27.         // Open Contact view via sidebar navigation
  28.         // await page.getByRole("link", { name: /Contact/ }).click();
  29.         // await page.waitForLoadState("networkidle");
  30.  
  31.         // Act
  32.         // Click filter button
  33.         const filterButtonId = iconNames.filter + elementSuffixes.filterActionButton;
  34.         await uiTester.click(filterButtonId);
  35.  
  36.         // Open company multi-browser
  37.         const multiBrowserId =
  38.             elements.multiBrowser.FdMultiBrowser + "companyId" + elements.browser.browserIcon;
  39.         await uiTester.click(multiBrowserId);
  40.  
  41.         // Select multiple checkboxes
  42.         const rightTablePrefix = elementPrefixes.right + elements.table.tableElementId + 0;
  43.         const checkbox0Id = rightTablePrefix + tableElementSuffixes.checkbox + 0;
  44.         const checkbox1Id = rightTablePrefix + tableElementSuffixes.checkbox + 1;
  45.         const checkbox2Id = rightTablePrefix + tableElementSuffixes.checkbox + 2;
  46.  
  47.         await uiTester.click(checkbox0Id);
  48.         await uiTester.click(checkbox1Id);
  49.         await uiTester.click(checkbox2Id);
  50.  
  51.         await uiTester.click(elements.multiBrowser.moveResourcesToLeftTable + 0);
  52.         await uiTester.click(elements.browser.okBrowserButton + 0);
  53.  
  54.         // Assert
  55.         await assertElementHaveCheckmark(checkbox0Id);
  56.         await assertElementHaveCheckmark(checkbox1Id);
  57.         await assertElementHaveCheckmark(checkbox2Id);
  58.     },
  59. );
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement