Review changes batch 6 of 6

This commit is contained in:
2026-07-20 06:52:33 +08:00
parent db97d3da27
commit 5a31a75da0
160 changed files with 9206 additions and 572 deletions
+27 -7
View File
@@ -35,11 +35,31 @@ const waitFor = async (send, expression, message) => {
}
throw new Error(message)
}
const open = async (send, route, query, selector) => {
const waitForPageLoad = async (socket, trigger) => new Promise((resolve, reject) => {
const timeout = setTimeout(() => {
socket.removeEventListener('message', onMessage)
reject(new Error('Page reload did not emit Page.loadEventFired'))
}, 4000)
const onMessage = (event) => {
const message = JSON.parse(event.data)
if (message.method === 'Page.loadEventFired') {
clearTimeout(timeout)
socket.removeEventListener('message', onMessage)
resolve()
}
}
socket.addEventListener('message', onMessage)
Promise.resolve().then(trigger).catch((error) => {
clearTimeout(timeout)
socket.removeEventListener('message', onMessage)
reject(error)
})
})
const open = async (socket, send, route, query, selector) => {
const url = `${origin}/#${route}${query}`
await send('Page.navigate', { url })
await waitFor(send, `location.href === ${JSON.stringify(url)}`, `${route} navigation failed`)
await send('Page.reload')
await waitForPageLoad(socket, () => send('Page.reload'))
await waitFor(send, `Boolean(document.querySelector(${JSON.stringify(selector)}))`, `${route}${query} did not render`)
}
@@ -48,11 +68,11 @@ const run = async () => {
try {
await send('Page.enable')
await send('Runtime.enable')
await open(send, '/pages/genealogy/g11-genealogy-settings', '?genealogyId=1001', '.settings-state--form')
await open(send, '/pages/genealogy/g11-genealogy-settings', '?state=success&genealogyId=1001', '.settings-state--success')
await open(send, '/pages/genealogy/g12-generation-poems', '?genealogyId=1001', '.poem-state--list')
await open(send, '/pages/genealogy/g12-generation-poems', '?state=empty&genealogyId=1001', '.poem-state--empty')
await open(send, '/pages/genealogy/g12-generation-poems', '?state=edit&genealogyId=1001', '.poem-state--edit')
await open(socket, send, '/pages/genealogy/g11-genealogy-settings', '?genealogyId=1001', '.settings-state--form')
await open(socket, send, '/pages/genealogy/g11-genealogy-settings', '?state=success&genealogyId=1001', '.settings-state--success')
await open(socket, send, '/pages/genealogy/g12-generation-poems', '?genealogyId=1001', '.poem-state--list')
await open(socket, send, '/pages/genealogy/g12-generation-poems', '?state=empty&genealogyId=1001', '.poem-state--empty')
await open(socket, send, '/pages/genealogy/g12-generation-poems', '?state=edit&genealogyId=1001', '.poem-state--edit')
process.stdout.write('G11-G12-SETTINGS-POEMS-RUNTIME-SMOKE PASS\n')
} finally {
socket.close()