1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- import { expect, Page } from '@playwright/test'
- import { test } from './fixtures'
- import { createPage, randomLowerString, randomString, renamePage } from './utils'
- /***
- * Test rename feature
- ***/
- async function page_rename_test(page: Page, original_page_name: string, new_page_name: string) {
- const rand = randomString(10)
- let original_name = original_page_name + rand
- let new_name = new_page_name + rand
- await createPage(page, original_name)
- // Rename page in UI
- await renamePage(page, new_name)
- expect(await page.innerText('.page-title .title')).toBe(new_name)
- // TODO: Test if page is renamed in re-entrance
- // TODO: Test if page is hierarchy
- }
- async function homepage_rename_test(page: Page, original_page_name: string, new_page_name: string) {
- const rand = randomString(10)
- let original_name = original_page_name + rand
- let new_name = new_page_name + rand
- await createPage(page, original_name)
- // Toggle settings
- await page.click('#main-content-container')
- await page.keyboard.press('t')
- await page.keyboard.press('s')
- await page.click('a[data-id="features"]')
- await page.click('#settings div:nth-child(1) a')
- await page.type('input', original_name)
- await page.click('[aria-label="Close"]')
- expect(await page.locator('.home-nav span.flex-1').innerText()).toBe(original_name);
- await renamePage(page, new_name)
- expect(await page.locator('.home-nav span.flex-1').innerText()).toBe(new_name);
- // Reenable journal
- await page.click('#main-content-container')
- await page.keyboard.press('t')
- await page.keyboard.press('s')
- await page.click('a[data-id="features"]')
- await page.click('#settings div:nth-child(1) a')
- await page.click('[aria-label="Close"]')
- }
- test('page rename test', async ({ page }) => {
- // TODO: Fix commented out test. Started failing after https://github.com/logseq/logseq/pull/6945
- // await homepage_rename_test(page, "abcd", "a/b/c/d")
- await page_rename_test(page, "abcd", "a.b.c.d")
- await page_rename_test(page, "abcd", "a/b/c/d")
- })
- // TODO introduce more samples when #4722 is fixed
- test('page title property test', async ({ page }) => {
- // Edit Title Property and Double Enter (ETPDE)
- // exit editing via insert new block
- let rand = randomLowerString(10)
- let original_name = "etpde old" + rand
- let new_name = "etpde new" + rand
- await createPage(page, original_name)
- // add some spaces to test if it is trimmed
- await page.type(':nth-match(textarea, 1)', 'title:: ' + new_name + " ")
- await page.press(':nth-match(textarea, 1)', 'Enter') // DWIM property mode creates new line
- await page.press(':nth-match(textarea, 1)', 'Enter')
- expect(await page.innerText('.page-title .title')).toBe(new_name)
- // Edit Title Property and Esc (ETPE)
- // exit editing via moving out focus
- rand = randomLowerString(10)
- original_name = "etpe old " + rand
- new_name = "etpe new " + rand
- await createPage(page, original_name)
- await page.type(':nth-match(textarea, 1)', 'title:: ' + new_name)
- await page.press(':nth-match(textarea, 1)', 'Escape')
- expect(await page.innerText('.page-title .title')).toBe(new_name)
- })
|