| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- using Microsoft.Playwright;
- namespace Tests.E2e.PageObjectModels;
- public class AccessPointsListPom(IPage page) {
- public AddResourceComponent AddAccessPoint => new(page, "accesspoint");
- public ILocator PageRoot => page.GetByTestId("accesspoints-page-root");
- public ILocator PageTitle => page.GetByTestId("accesspoints-page-title");
- public ILocator Loading => page.GetByTestId("accesspoints-loading");
- public ILocator EmptyState => page.GetByTestId("accesspoints-empty");
- public ILocator AccessPointsList => page.GetByTestId("accesspoints-list");
- public ILocator AddSection => page.GetByTestId("accesspoints-add-section");
- public ILocator AddInput => page.GetByTestId("add-accesspoint-input");
- public ILocator AddButton => page.GetByTestId("add-accesspoint-button");
- // -------------------------------------------------
- // Dynamic AccessPoint Items
- // -------------------------------------------------
- public ILocator AccessPointItem(string name) => page.GetByTestId($"accesspoint-item-{Sanitize(name)}");
- public ILocator AccessPointItemLink(string name) => page.GetByTestId($"open-accesspoint-{Sanitize(name)}-link");
- public ILocator DeleteButton(string name) {
- return AccessPointItem(name)
- .GetByTestId("delete-accesspoint-button");
- }
- public ILocator EditButton(string name) {
- return AccessPointItem(name)
- .GetByTestId("edit-accesspoint-button");
- }
- public ILocator RenameButton(string name) {
- return AccessPointItem(name)
- .GetByTestId("rename-accesspoint-button");
- }
- public ILocator CloneButton(string name) {
- return AccessPointItem(name)
- .GetByTestId("clone-accesspoint-button");
- }
- // -------------------------------------------------
- // Navigation
- // -------------------------------------------------
- public async Task GotoAsync(string baseUrl) {
- await page.GotoAsync($"{baseUrl}/accesspoints/list");
- await AssertLoadedAsync();
- }
- public async Task AssertLoadedAsync() {
- await Assertions.Expect(PageRoot).ToBeVisibleAsync();
- await Assertions.Expect(PageTitle).ToBeVisibleAsync();
- }
- public async Task WaitForListAsync() => await Assertions.Expect(AccessPointsList).ToBeVisibleAsync();
- // -------------------------------------------------
- // Actions
- // -------------------------------------------------
- public async Task AddAccessPointAsync(string name) {
- await AddAccessPoint.AddAsync(name);
- await Assertions.Expect(AccessPointItem(name))
- .ToBeVisibleAsync();
- }
- public async Task DeleteAccessPointAsync(string name) {
- await DeleteButton(name).ClickAsync();
- await page.GetByTestId("AccessPoint-confirm-modal-confirm").ClickAsync();
- await Assertions.Expect(AccessPointItem(name))
- .Not.ToBeVisibleAsync();
- }
- public async Task OpenAccessPointAsync(string name) {
- await AccessPointItemLink(name).ClickAsync();
- await page.WaitForURLAsync($"**/resources/hardware/{name}");
- }
- public async Task AssertAccessPointExists(string name) {
- await Assertions.Expect(AccessPointItem(name))
- .ToBeVisibleAsync();
- }
- public async Task AssertAccessPointDoesNotExist(string name) {
- await Assertions.Expect(AccessPointItem(name))
- .Not.ToBeVisibleAsync();
- }
- private static string Sanitize(string value) => value.Replace(" ", "-");
- }
|