Yet another huge refacto... While implementing undo and redo features I understood that I updated the stored typebot too many times (i.e. on each key input) so I had to rethink it entirely. I also moved around some files.
29 lines
1005 B
TypeScript
29 lines
1005 B
TypeScript
import test, { expect } from '@playwright/test'
|
|
import { createTypebots, parseDefaultBlockWithStep } from '../services/database'
|
|
import { defaultTextInputOptions, InputStepType } from 'models'
|
|
import { generate } from 'short-uuid'
|
|
|
|
test.describe('Editor', () => {
|
|
test('Undo / Redo buttons should work', async ({ page }) => {
|
|
const typebotId = generate()
|
|
await createTypebots([
|
|
{
|
|
id: typebotId,
|
|
...parseDefaultBlockWithStep({
|
|
type: InputStepType.TEXT,
|
|
options: defaultTextInputOptions,
|
|
}),
|
|
},
|
|
])
|
|
|
|
await page.goto(`/typebots/${typebotId}/edit`)
|
|
await page.click('text=Block #1', { button: 'right' })
|
|
await page.click('text=Delete')
|
|
await expect(page.locator('text=Block #1')).toBeHidden()
|
|
await page.click('button[aria-label="Undo"]')
|
|
await expect(page.locator('text=Block #1')).toBeVisible()
|
|
await page.click('button[aria-label="Redo"]')
|
|
await expect(page.locator('text=Block #1')).toBeHidden()
|
|
})
|
|
})
|