increase test coverage
extend test coverage
This commit is contained in:
@@ -9,13 +9,10 @@ export async function visitAndApproveStorage (page) {
|
||||
sessionStorage.clear()
|
||||
})
|
||||
await page.reload()
|
||||
const storageOk = page.locator('#storage_ok')
|
||||
if (await storageOk.count()) {
|
||||
await storageOk.click()
|
||||
} else {
|
||||
await page.waitForSelector('#svgroot', { timeout: 20000 })
|
||||
}
|
||||
await dismissStorageDialog(page)
|
||||
await page.waitForSelector('#svgroot', { timeout: 20000 })
|
||||
await selectEnglishAndSnap(page)
|
||||
await dismissStorageDialog(page)
|
||||
}
|
||||
|
||||
export async function selectEnglishAndSnap (page) {
|
||||
@@ -33,6 +30,7 @@ export async function openMainMenu (page) {
|
||||
}
|
||||
|
||||
export async function setSvgSource (page, svgMarkup) {
|
||||
await dismissStorageDialog(page)
|
||||
await page.locator('#tool_source').click()
|
||||
const textarea = page.locator('#svg_source_textarea')
|
||||
await expect(textarea).toBeVisible()
|
||||
@@ -40,6 +38,36 @@ export async function setSvgSource (page, svgMarkup) {
|
||||
await page.locator('#tool_source_save').click()
|
||||
}
|
||||
|
||||
export async function dismissStorageDialog (page) {
|
||||
const storageDialog = page.locator('se-storage-dialog')
|
||||
if (!(await storageDialog.count())) {
|
||||
try {
|
||||
await storageDialog.waitFor({ state: 'attached', timeout: 3000 })
|
||||
} catch {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
const isOpen = await storageDialog.getAttribute('dialog')
|
||||
if (isOpen !== 'open') return
|
||||
|
||||
const okButton = storageDialog.locator('button#storage_ok')
|
||||
if (await okButton.count()) {
|
||||
await okButton.click({ force: true })
|
||||
} else {
|
||||
await page.evaluate(() => {
|
||||
const dialog = document.querySelector('se-storage-dialog')
|
||||
dialog?.setAttribute('dialog', 'close')
|
||||
})
|
||||
}
|
||||
|
||||
await page.waitForFunction(
|
||||
() => document.querySelector('se-storage-dialog')?.getAttribute('dialog') !== 'open',
|
||||
null,
|
||||
{ timeout: 5000 }
|
||||
).catch(() => {})
|
||||
}
|
||||
|
||||
export async function clickCanvas (page, point) {
|
||||
const canvas = page.locator('#svgroot')
|
||||
const box = await canvas.boundingBox()
|
||||
|
||||
Reference in New Issue
Block a user