diff --git a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Audit/AuditConfigurationTests.cs b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Audit/AuditConfigurationTests.cs index e6747284..38c4e435 100644 --- a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Audit/AuditConfigurationTests.cs +++ b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Audit/AuditConfigurationTests.cs @@ -82,9 +82,12 @@ public class AuditConfigurationTests await Assertions.Expect(page.Locator("#audit-filter-entity-type")).ToBeVisibleAsync(); // Filter by the unique marker so only this run's 3 rows remain, then - // Search to load the grid. + // Search to load the grid. The Search/Clear pair sits in a + // `btn-group btn-group-sm` since the 2026-08-11 UI density sweep, so the + // size class lives on the group and NOT on the button — do not re-add + // `.btn-sm` to this selector. await page.Locator("#audit-filter-entity-type").FillAsync(marker); - await page.Locator("button.btn.btn-primary.btn-sm:has-text('Search')").ClickAsync(); + await page.Locator("button.btn.btn-primary:has-text('Search')").ClickAsync(); await page.WaitForLoadStateAsync(LoadState.NetworkIdle); // Seeded rows are isolated: a known row is visible AND the footer total @@ -116,7 +119,7 @@ public class AuditConfigurationTests // Filter by the marker so the totals/page-count reflect only this run. await page.Locator("#audit-filter-entity-type").FillAsync(marker); - await page.Locator("button.btn.btn-primary.btn-sm:has-text('Search')").ClickAsync(); + await page.Locator("button.btn.btn-primary:has-text('Search')").ClickAsync(); await page.WaitForLoadStateAsync(LoadState.NetworkIdle); // Page 1 of 2: Previous disabled, Next enabled. (M10 OffsetPager summary: @@ -161,7 +164,7 @@ public class AuditConfigurationTests // Filter by the unique marker and Search so only this run's single // large-state row populates the grid. await page.Locator("#audit-filter-entity-type").FillAsync(marker); - await page.Locator("button.btn.btn-primary.btn-sm:has-text('Search')").ClickAsync(); + await page.Locator("button.btn.btn-primary:has-text('Search')").ClickAsync(); await page.WaitForLoadStateAsync(LoadState.NetworkIdle); // Open the modal from the seeded large-state row. The marker is unique, @@ -198,7 +201,7 @@ public class AuditConfigurationTests await page.WaitForLoadStateAsync(LoadState.NetworkIdle); await page.Locator("#audit-filter-entity-type").FillAsync(marker); - await page.Locator("button.btn.btn-primary.btn-sm:has-text('Search')").ClickAsync(); + await page.Locator("button.btn.btn-primary:has-text('Search')").ClickAsync(); await page.WaitForLoadStateAsync(LoadState.NetworkIdle); // Click the copy-entity-ID button on the (only) seeded row. diff --git a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Deployment/TopologyAreaTests.cs b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Deployment/TopologyAreaTests.cs index b7d36afb..768bbc3c 100644 --- a/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Deployment/TopologyAreaTests.cs +++ b/tests/ZB.MOM.WW.ScadaBridge.CentralUI.PlaywrightTests/Deployment/TopologyAreaTests.cs @@ -92,10 +92,13 @@ public class TopologyAreaTests : IClassFixture await Assertions.Expect(dialog).ToBeVisibleAsync(); // First select = Site (option value = site.Id); then the name; then Create. + // The dialog footer pair sits in a `btn-group btn-group-sm` since the + // 2026-08-11 UI density sweep, so the size class lives on the group and NOT + // on the button — do not re-add `.btn-sm` to the footer selectors here. await dialog.Locator("select").First.SelectOptionAsync( new SelectOptionValue { Value = _cluster.SiteAId.ToString() }); await dialog.Locator("input[placeholder='Area name']").FillAsync(areaName); - await dialog.Locator("button.btn.btn-primary.btn-sm:has-text('Create')").ClickAsync(); + await dialog.Locator("button.btn.btn-primary:has-text('Create')").ClickAsync(); await Assertions.Expect(page.Locator(".toast")).ToHaveCountAsync(1, new() { Timeout = 15_000 }); await Assertions.Expect(page.Locator($"span.tv-label:has-text('{areaName}')")) @@ -207,7 +210,7 @@ public class TopologyAreaTests : IClassFixture // the option's exact visible text. A