feat: improve case brief classification flow
This commit is contained in:
+13
-4
@@ -27,6 +27,9 @@ async function waitForSave(page: Page, action: () => Promise<void>) {
|
||||
test('move, folder expansion, hand pan, desktop wheel zoom, mobile pinch, and reload persistence', async ({ page }) => {
|
||||
await page.goto('/?level=e2e-level&edit=1')
|
||||
await expect(page.getByRole('heading', { name: 'Browser Safety Test' })).toBeVisible()
|
||||
await expect(page.locator('.brief-panel')).toBeVisible()
|
||||
await expect(page.getByRole('button', { name: 'Case brief', exact: true })).toContainText('2')
|
||||
await page.getByRole('button', { name: 'BEGIN INVESTIGATION', exact: true }).click()
|
||||
|
||||
const folder = page.locator('[data-temporal-id="widget:11111111-1111-4111-8111-111111111111"]')
|
||||
const file = page.locator('[data-temporal-id="file:contains:11111111-1111-4111-8111-111111111111:22222222-2222-4222-8222-222222222222"]')
|
||||
@@ -102,22 +105,28 @@ test('move, folder expansion, hand pan, desktop wheel zoom, mobile pinch, and re
|
||||
await boardViewport.dispatchEvent('pointerup', { pointerId: 42, pointerType: 'touch', isPrimary: false, button: 0, clientX: touchOrigin.x + 150, clientY: touchOrigin.y })
|
||||
await boardViewport.dispatchEvent('pointerup', { pointerId: 41, pointerType: 'touch', isPrimary: true, button: 0, clientX: touchOrigin.x, clientY: touchOrigin.y })
|
||||
|
||||
await page.getByRole('button', { name: 'BRIEF', exact: true }).click()
|
||||
await page.getByRole('button', { name: 'Case brief', exact: true }).click()
|
||||
await expect(page.locator('.brief-panel')).toContainText('Ada Lovelace')
|
||||
const personConcept = page.locator('.brief-concepts section').filter({ hasText: 'Ada Lovelace' })
|
||||
await personConcept.getByRole('button', { name: 'PERSON', exact: true }).click()
|
||||
await waitForSave(page, () => personConcept.getByRole('button', { name: 'PERSON', exact: true }).click())
|
||||
await expect(page.locator('.brief-panel')).toBeVisible()
|
||||
await expect(page.locator('.evidence-card.party.arriving')).toContainText('Ada Lovelace')
|
||||
await personConcept.getByRole('button', { name: 'EDIT DOSSIER', exact: true }).click()
|
||||
await expect(page.getByText('Edit person dossier')).toBeVisible()
|
||||
await page.getByLabel('Party aliases').fill('A. A. L.')
|
||||
await page.locator('.party-editor .folder-members input[type="checkbox"]').first().check()
|
||||
await waitForSave(page, () => page.getByRole('button', { name: 'SAVE DOSSIER', exact: true }).click())
|
||||
await expect(page.locator('.evidence-card.party')).toContainText('Ada Lovelace')
|
||||
|
||||
await page.getByRole('button', { name: 'BRIEF', exact: true }).click()
|
||||
const organizationConcept = page.locator('.brief-concepts section').filter({ hasText: 'Difference Engine Bureau' })
|
||||
await organizationConcept.getByRole('button', { name: 'ORGANIZATION', exact: true }).click()
|
||||
await waitForSave(page, () => organizationConcept.getByRole('button', { name: 'ORGANIZATION', exact: true }).click())
|
||||
await expect(page.locator('.brief-panel')).toBeVisible()
|
||||
await organizationConcept.getByRole('button', { name: 'EDIT DOSSIER', exact: true }).click()
|
||||
await page.getByLabel('Organization type').selectOption('public_body')
|
||||
await waitForSave(page, () => page.getByRole('button', { name: 'SAVE DOSSIER', exact: true }).click())
|
||||
await page.getByRole('button', { name: 'RETURN TO BOARD', exact: true }).click()
|
||||
await page.reload()
|
||||
await expect(page.locator('.brief-panel')).toBeHidden()
|
||||
await expect(page.locator('.evidence-card.party')).toHaveCount(2)
|
||||
await expect(page.locator('.evidence-card.party')).toContainText(['Ada Lovelace', 'Difference Engine Bureau'])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user