Files
ComfyUI_frontend/browser_tests/tests/widgetCopyButton.spec.ts
AustinMroz 9d5719871a Compact vue nodes (#12886)
Updates vue nodes to be compact. 

This PR does modify the sizing of the asset dropdown (as used on nodes
like "Load Image"). There are outstanding concerns about the visibility
of the upload button and ongoing work to address this.
| Before | After |
| ------ | ----- |
| <img width="360" alt="before"
src="https://github.com/user-attachments/assets/5c866d6f-d83e-40e1-9d87-17b990d94e04"/>
| <img width="360" alt="after"
src="https://github.com/user-attachments/assets/2a809e90-13aa-4f95-8b73-3f20b02fd9a1"
/>|

Subsumes #12678

---------

Co-authored-by: Alex <alex@Alexs-MacBook-Pro.local>
Co-authored-by: github-actions <github-actions@github.com>
2026-07-03 02:31:41 +00:00

37 lines
1.2 KiB
TypeScript

import {
comfyExpect as expect,
comfyPageFixture as test
} from '@e2e/fixtures/ComfyPage'
test.describe('Widget copy button', { tag: ['@ui', '@vue-nodes'] }, () => {
test.beforeEach(async ({ comfyPage }) => {
await comfyPage.searchBoxV2.addNode('Preview as Text')
await comfyPage.vueNodes.waitForNodes()
})
test('Copy button has correct aria-label', async ({ comfyPage }) => {
const copyButton = comfyPage.page
.locator('[data-node-id] button[aria-label]')
.filter({ has: comfyPage.page.locator('.icon-\\[lucide--copy\\]') })
.first()
await expect(copyButton).toBeAttached()
await expect(copyButton).toHaveAttribute('aria-label', /copy/i)
})
test('Copy button exists within textarea widget group container', async ({
comfyPage
}) => {
const container = comfyPage.page
.locator('[data-node-id] div.group:has(textarea[readonly])')
.first()
await expect(container).toBeVisible()
await container.hover()
await comfyPage.nextFrame()
const copyButton = container.locator('button').filter({
has: comfyPage.page.locator('.icon-\\[lucide--copy\\]')
})
await expect(copyButton.first()).toBeAttached()
})
})