import { expect } from '@playwright/test' import { comfyPageFixture as test } from './ComfyPage' test.describe('Copy Paste', () => { test('Can copy and paste node', async ({ comfyPage }) => { await comfyPage.clickEmptyLatentNode() await comfyPage.page.mouse.move(10, 10) await comfyPage.ctrlC() await comfyPage.ctrlV() await expect(comfyPage.canvas).toHaveScreenshot('copied-node.png') }) test('Can copy and paste text', async ({ comfyPage }) => { const textBox = comfyPage.widgetTextBox await textBox.click() const originalString = await textBox.inputValue() await textBox.selectText() await comfyPage.ctrlC() await comfyPage.ctrlV() await comfyPage.ctrlV() const resultString = await textBox.inputValue() expect(resultString).toBe(originalString + originalString) }) /** * https://github.com/Comfy-Org/ComfyUI_frontend/issues/98 */ test('Paste in text area with node previously copied', async ({ comfyPage }) => { await comfyPage.clickEmptyLatentNode() await comfyPage.ctrlC() const textBox = comfyPage.widgetTextBox await textBox.click() await textBox.inputValue() await textBox.selectText() await comfyPage.ctrlC() await comfyPage.ctrlV() await comfyPage.ctrlV() await expect(comfyPage.canvas).toHaveScreenshot( 'paste-in-text-area-with-node-previously-copied.png' ) }) test('Copy text area does not copy node', async ({ comfyPage }) => { const textBox = comfyPage.widgetTextBox await textBox.click() await textBox.inputValue() await textBox.selectText() await comfyPage.ctrlC() // Unfocus textbox. await comfyPage.page.mouse.click(10, 10) await comfyPage.ctrlV() await expect(comfyPage.canvas).toHaveScreenshot('no-node-copied.png') }) })