Files
ChronoCCG/Chrono/Tests/PageObjects/LoginPage.cs
T
2026-07-03 14:31:40 -04:00

22 lines
796 B
C#

using Microsoft.Playwright;
namespace Tests.PageObjects;
public class LoginPage : BasePage
{
public LoginPage(IPage page) : base(page) { }
public ILocator EnrollButton => Page.GetByRole(AriaRole.Button, new() { Name = "Enroll Passkey" });
public ILocator SignInButton => Page.GetByRole(AriaRole.Button, new() { Name = "Sign in with Passkey" });
public ILocator ErrorMessage => Page.Locator(".alert-danger");
public async Task GotoAsync() => await NavigateToAsync("/login");
public async Task WaitForInteractiveAsync()
{
await Page.WaitForLoadStateAsync(LoadState.NetworkIdle);
// Wait for Blazor circuit: either button must be visible
await Page.WaitForSelectorAsync("button", new PageWaitForSelectorOptions { Timeout = 10_000 });
}
}