import { describe, expect, it } from 'vitest' import { keyboard } from 'vitest-browser-commands/playwright' import { setupTest } from '../testing/index.ts' describe('blockquote keymap', () => { it('should wrap paragraph into blockquote with shortcut', async () => { const { editor, n } = setupTest() const doc1 = n.doc(n.p('hello')) editor.set(doc1) await keyboard.press('ControlOrMeta+Shift+B') const doc2 = n.doc(n.blockquote(n.p('hello'))) expect(editor.state.doc.toJSON()).toEqual(doc2.toJSON()) }) it('should lift blockquote up with shortcut', async () => { const { editor, n } = setupTest() const doc1 = n.doc(n.blockquote(n.p('hello'))) editor.set(doc1) await keyboard.press('ControlOrMeta+Shift+B') const doc2 = n.doc(n.p('hello')) expect(editor.state.doc.toJSON()).toEqual(doc2.toJSON()) }) it('should unset blockquote when press backspace at the beginning of blockquote', async () => { const { editor, n } = setupTest() const doc1 = n.doc(n.blockquote(n.p('hello'))) editor.set(doc1) await keyboard.press('Backspace') const doc2 = n.doc(n.p('hello')) expect(editor.state.doc.toJSON()).toEqual(doc2.toJSON()) }) })