@@ -4,7 +4,7 @@ const { waitForSidebarData, openFilterModal } = require("./helpers");
44test ( "filter state toggles and persists in sidebar CTA" , async ( { page } ) => {
55 await page . goto ( "/" ) ;
66 await waitForSidebarData ( page ) ;
7- const initialRows = await page . locator ( "#feature-list tbody tr " ) . count ( ) ;
7+ const initialRows = await page . locator ( "#feature-list .feature-row " ) . count ( ) ;
88
99 await openFilterModal ( page ) ;
1010 await expect ( page . getByText ( "Find those Fish Fries!" ) ) . toBeVisible ( ) ;
@@ -16,13 +16,13 @@ test("filter state toggles and persists in sidebar CTA", async ({ page }) => {
1616 await expect ( page . locator ( "#filterSidebar-btn" ) ) . toHaveClass ( / b t n - p r i m a r y / ) ;
1717 await expect
1818 . poll ( async ( ) => {
19- return page . locator ( "#feature-list tbody tr " ) . count ( ) ;
19+ return page . locator ( "#feature-list .feature-row " ) . count ( ) ;
2020 } )
2121 . toBeLessThanOrEqual ( initialRows ) ;
2222
23- const filteredRows = await page . locator ( "#feature-list tbody tr " ) . count ( ) ;
23+ const filteredRows = await page . locator ( "#feature-list .feature-row " ) . count ( ) ;
2424 if ( filteredRows > 0 ) {
25- await page . locator ( "#feature-list tbody tr " ) . first ( ) . click ( ) ;
25+ await page . locator ( "#feature-list .feature-row " ) . first ( ) . click ( ) ;
2626 await expect ( page . locator ( "#feature-title" ) ) . toBeVisible ( { timeout : 10000 } ) ;
2727 await expect ( page . getByText ( "has not yet been verified this year" ) ) . toHaveCount ( 0 ) ;
2828 await page . locator ( ".modal.show" ) . getByRole ( "button" , { name : "Close" } ) . last ( ) . click ( ) ;
@@ -38,7 +38,7 @@ test("filter state toggles and persists in sidebar CTA", async ({ page }) => {
3838test ( "good friday filter can be toggled without breaking results" , async ( { page } ) => {
3939 await page . goto ( "/" ) ;
4040 await waitForSidebarData ( page ) ;
41- const before = await page . locator ( "#feature-list tbody tr " ) . count ( ) ;
41+ const before = await page . locator ( "#feature-list .feature-row " ) . count ( ) ;
4242
4343 await openFilterModal ( page ) ;
4444 await page . locator ( "input#GoodFriday" ) . check ( ) ;
@@ -47,7 +47,7 @@ test("good friday filter can be toggled without breaking results", async ({ page
4747 await expect ( page . locator ( "#filterSidebar-btn" ) ) . toContainText ( "Filtered" ) ;
4848 await expect
4949 . poll ( async ( ) => {
50- return page . locator ( "#feature-list tbody tr " ) . count ( ) ;
50+ return page . locator ( "#feature-list .feature-row " ) . count ( ) ;
5151 } )
5252 . toBeLessThanOrEqual ( before ) ;
5353
@@ -56,3 +56,25 @@ test("good friday filter can be toggled without breaking results", async ({ page
5656 await page . getByRole ( "button" , { name : "Find those Fish Fries!" } ) . click ( ) ;
5757 await expect ( page . locator ( "#filterSidebar-btn" ) ) . toContainText ( "Filter" ) ;
5858} ) ;
59+
60+ test ( "ash wednesday filter can be toggled without breaking results" , async ( { page } ) => {
61+ await page . goto ( "/" ) ;
62+ await waitForSidebarData ( page ) ;
63+ const before = await page . locator ( "#feature-list .feature-row" ) . count ( ) ;
64+
65+ await openFilterModal ( page ) ;
66+ await page . locator ( "input#AshWednesday" ) . check ( ) ;
67+ await page . getByRole ( "button" , { name : "Find those Fish Fries!" } ) . click ( ) ;
68+
69+ await expect ( page . locator ( "#filterSidebar-btn" ) ) . toContainText ( "Filtered" ) ;
70+ await expect
71+ . poll ( async ( ) => {
72+ return page . locator ( "#feature-list .feature-row" ) . count ( ) ;
73+ } )
74+ . toBeLessThanOrEqual ( before ) ;
75+
76+ await page . locator ( "#filterSidebar-btn" ) . click ( ) ;
77+ await page . locator ( "input#AshWednesday" ) . uncheck ( ) ;
78+ await page . getByRole ( "button" , { name : "Find those Fish Fries!" } ) . click ( ) ;
79+ await expect ( page . locator ( "#filterSidebar-btn" ) ) . toContainText ( "Filter" ) ;
80+ } ) ;
0 commit comments