Files
jdescopingtool/NEW/tests/JdeScoping.Ui.Tests/SearchesDashboardPageTests.cs
T
Joseph Doherty 9bd5e340b0 Convert XML list markup to plain numbered text in UI test remarks
Replace <list type="number"><item>...</item></list> with plain numbered
lines in method-level <remarks> blocks across 23 UI test files to match
the codebase convention of using simple text in XML doc comments.
2026-02-10 08:05:42 -05:00

42 lines
1.8 KiB
C#

using JdeScoping.Ui.Tests.Helpers;
using JdeScoping.Ui.Tests.Support;
namespace JdeScoping.Ui.Tests;
/// <summary>
/// Playwright UI smoke tests for the Searches Dashboard page.
/// Validates that the dashboard loads at the expected URL and shows a heading or data grid.
/// Requires a running Docker host (Category: RequiresDockerHost).
/// </summary>
public sealed class SearchesDashboardPageTests(PlaywrightFixture fixture) : UiTestBase(fixture)
{
/// <summary>
/// Verifies the Searches Dashboard page loads at /searches and displays a heading or data grid.
/// </summary>
/// <remarks>
/// Steps:
/// 1. Navigate to the Searches Dashboard page.
/// 2. Assert the URL ends with /searches, /search, or /.
/// 3. Assert that "Searches Dashboard", "Search Details", or the Radzen data grid is visible.
/// </remarks>
[Fact]
[Trait("Category", "RequiresDockerHost")]
public async Task SearchesDashboard_Loads()
{
await RunAsync(async page =>
{
await UiNavigationHelper.NavigateToSearchesDashboardAsync(page);
string url = page.Url;
Assert.True(
url.EndsWith("/searches", StringComparison.OrdinalIgnoreCase) ||
url.EndsWith("/search", StringComparison.OrdinalIgnoreCase) ||
url.EndsWith("/", StringComparison.OrdinalIgnoreCase),
$"Unexpected URL: {url}");
bool hasSearchesHeading = await page.GetByText("Searches Dashboard").IsVisibleAsync();
bool hasSearchDetails = await page.GetByText("Search Details").IsVisibleAsync();
bool hasGrid = await page.Locator(".rz-data-grid").First.IsVisibleAsync();
Assert.True(hasSearchesHeading || hasSearchDetails || hasGrid);
});
}
}