diff --git a/e2e/cypress/component/1-store/viewpane/deleteKeyCode.cy.ts b/e2e/cypress/component/1-store/viewpane/deleteKeyCode.cy.ts new file mode 100644 index 00000000..474de337 --- /dev/null +++ b/e2e/cypress/component/1-store/viewpane/deleteKeyCode.cy.ts @@ -0,0 +1,42 @@ +import { useVueFlow } from '@braks/vue-flow' +import { getElements } from '../../../utils' + +const { nodes, edges } = getElements() + +describe('Store State: `deleteKeyCode`', () => { + const store = useVueFlow({ id: 'test' }) + + beforeEach(() => { + cy.vueFlow({ + nodes, + edges, + }) + }) + + it('deletes node', () => { + cy.window().then(() => { + cy.get(`[data-id="${nodes[0].id}"]`).click() + + cy.get('body').trigger('keydown', { key: 'Backspace' }) + + cy.wait(1).then(() => { + cy.get(`[data-id="${nodes[0].id}"]`).should('not.exist') + expect(store.nodes.value.some((node) => node.id === nodes[0].id)).to.equal(false) + }) + }) + }) + + it('changes key code', () => { + store.deleteKeyCode.value = 'Delete' + cy.window().then(() => { + cy.get(`[data-id="${nodes[0].id}"]`).click() + + cy.get('body').trigger('keydown', { key: 'Delete' }) + + cy.wait(1).then(() => { + cy.get(`[data-id="${nodes[0].id}"]`).should('not.exist') + expect(store.nodes.value.some((node) => node.id === nodes[0].id)).to.equal(false) + }) + }) + }) +})