diff --git a/__tests__/e2e/local-search/index.md b/__tests__/e2e/local-search/index.md index 08d8b31a..6364f605 100644 --- a/__tests__/e2e/local-search/index.md +++ b/__tests__/e2e/local-search/index.md @@ -1 +1,6 @@ -# Local search included \ No newline at end of file +--- +title: Local search frontmatter title +--- +# Local search included + +# {{ $frontmatter.title }} \ No newline at end of file diff --git a/__tests__/e2e/local-search/local-search.test.ts b/__tests__/e2e/local-search/local-search.test.ts index 492136b6..6e19a423 100644 --- a/__tests__/e2e/local-search/local-search.test.ts +++ b/__tests__/e2e/local-search/local-search.test.ts @@ -1,18 +1,23 @@ +const getSearchResults = async (text: string) => { + await page.locator('#local-search button').click() + + const input = await page.waitForSelector('input#localsearch-input') + await input.fill(text) + + await page.waitForSelector('ul#localsearch-list', { state: 'visible' }) + + return page.locator('#localsearch-list') +} + describe('local search', () => { beforeEach(async () => { await goto('/') }) test('exclude content from search results', async () => { - await page.locator('#local-search button').click() + const searchResults = await getSearchResults('local') - const input = await page.waitForSelector('input#localsearch-input') - await input.type('local') - - await page.waitForSelector('ul#localsearch-list', { state: 'visible' }) - - const searchResults = page.locator('#localsearch-list') - expect(await searchResults.locator('li[role=option]').count()).toBe(1) + expect(await searchResults.locator('li[role=option]').count()).toBe(2) expect( await searchResults.filter({ hasText: 'Local search included' }).count() @@ -28,4 +33,14 @@ describe('local search', () => { .count() ).toBe(0) }) + + test('frontmatter content from search results', async () => { + const searchResults = await getSearchResults('local') + + expect( + await searchResults + .filter({ hasText: 'Local search frontmatter title' }) + .count() + ).toBe(1) + }) })