mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-30 19:21:54 +00:00
fix: test code
This commit is contained in:
@@ -185,18 +185,25 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Import Failed Extensions section should show 1 package
|
// Import Failed Extensions section should show 1 package
|
||||||
const importFailedSection = wrapper.findAll(
|
const sections = wrapper.findAll('.bg-secondary-background')
|
||||||
'.w-full.flex.flex-col.bg-base-background'
|
expect(sections.length).toBeGreaterThan(0)
|
||||||
)[0]
|
|
||||||
expect(importFailedSection.text()).toContain('1')
|
const importFailedSection = sections.find((section) =>
|
||||||
expect(importFailedSection.text()).toContain('Import Failed Extensions')
|
section.text().includes('Import Failed Extensions')
|
||||||
|
)
|
||||||
|
expect(importFailedSection).toBeDefined()
|
||||||
|
expect(importFailedSection!.text()).toContain('1')
|
||||||
|
expect(importFailedSection!.text()).toContain('Import Failed Extensions')
|
||||||
|
|
||||||
// Conflicts section should show 3 conflicts (excluding import_failed)
|
// Conflicts section should show 3 conflicts (excluding import_failed)
|
||||||
const conflictsSection = wrapper.findAll(
|
const conflictsSection = sections.find(
|
||||||
'.w-full.flex.flex-col.bg-base-background'
|
(section) =>
|
||||||
)[1]
|
section.text().includes('Conflicts') &&
|
||||||
expect(conflictsSection.text()).toContain('3')
|
!section.text().includes('Import Failed')
|
||||||
expect(conflictsSection.text()).toContain('Conflicts')
|
)
|
||||||
|
expect(conflictsSection).toBeDefined()
|
||||||
|
expect(conflictsSection!.text()).toContain('3')
|
||||||
|
expect(conflictsSection!.text()).toContain('Conflicts')
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -208,10 +215,14 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
it('should toggle import failed panel', async () => {
|
it('should toggle import failed panel', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Find import failed panel header (first one)
|
// Find import failed panel header - look for the one containing "Import Failed Extensions"
|
||||||
const importFailedHeader = wrapper.find(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)
|
)
|
||||||
|
const importFailedHeader = headers.find((header) =>
|
||||||
|
header.text().includes('Import Failed Extensions')
|
||||||
|
)
|
||||||
|
expect(importFailedHeader).toBeDefined()
|
||||||
|
|
||||||
// Initially collapsed
|
// Initially collapsed
|
||||||
expect(
|
expect(
|
||||||
@@ -219,7 +230,7 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
).toBe(false)
|
).toBe(false)
|
||||||
|
|
||||||
// Click to expand import failed panel
|
// Click to expand import failed panel
|
||||||
await importFailedHeader.trigger('click')
|
await importFailedHeader!.trigger('click')
|
||||||
|
|
||||||
// Should be expanded now and show package name
|
// Should be expanded now and show package name
|
||||||
const expandedContent = wrapper.find(
|
const expandedContent = wrapper.find(
|
||||||
@@ -236,34 +247,46 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
it('should toggle conflicts panel', async () => {
|
it('should toggle conflicts panel', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Find conflicts panel header (second one)
|
// Find conflicts panel header - look for the one containing "Conflicts"
|
||||||
const conflictsHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[1]
|
)
|
||||||
|
const conflictsHeader = headers.find(
|
||||||
|
(header) =>
|
||||||
|
header.text().includes('Conflicts') &&
|
||||||
|
!header.text().includes('Import Failed')
|
||||||
|
)
|
||||||
|
expect(conflictsHeader).toBeDefined()
|
||||||
|
|
||||||
// Click to expand conflicts panel
|
// Click to expand conflicts panel
|
||||||
await conflictsHeader.trigger('click')
|
await conflictsHeader!.trigger('click')
|
||||||
|
|
||||||
// Should be expanded now
|
// Should be expanded now - look for the expanded content
|
||||||
const conflictItems = wrapper.findAll('.conflict-list-item')
|
const expandedPanels = wrapper.findAll(
|
||||||
expect(conflictItems.length).toBeGreaterThan(0)
|
'[data-testid="conflict-dialog-panel-expanded"]'
|
||||||
|
)
|
||||||
|
expect(expandedPanels.length).toBeGreaterThan(0)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('should toggle extensions panel', async () => {
|
it('should toggle extensions panel', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Find extensions panel header (third one)
|
// Find extensions panel header - look for the one containing "Extensions at Risk"
|
||||||
const extensionsHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[2]
|
)
|
||||||
|
const extensionsHeader = headers.find((header) =>
|
||||||
|
header.text().includes('Extensions at Risk')
|
||||||
|
)
|
||||||
|
expect(extensionsHeader).toBeDefined()
|
||||||
|
|
||||||
// Click to expand extensions panel
|
// Click to expand extensions panel
|
||||||
await extensionsHeader.trigger('click')
|
await extensionsHeader!.trigger('click')
|
||||||
|
|
||||||
// Should be expanded now and show all package names
|
// Should be expanded now and show all package names
|
||||||
const expandedContent = wrapper.findAll(
|
const expandedContent = wrapper.find(
|
||||||
'[data-testid="conflict-dialog-panel-expanded"]'
|
'[data-testid="conflict-dialog-panel-expanded"]'
|
||||||
)[0]
|
)
|
||||||
expect(expandedContent.exists()).toBe(true)
|
expect(expandedContent.exists()).toBe(true)
|
||||||
expect(expandedContent.text()).toContain('Test Package 1')
|
expect(expandedContent.text()).toContain('Test Package 1')
|
||||||
expect(expandedContent.text()).toContain('Test Package 2')
|
expect(expandedContent.text()).toContain('Test Package 2')
|
||||||
@@ -273,18 +296,27 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
it('should collapse other panels when opening one', async () => {
|
it('should collapse other panels when opening one', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
const importFailedHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[0]
|
)
|
||||||
const conflictsHeader = wrapper.findAll(
|
const importFailedHeader = headers.find((header) =>
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
header.text().includes('Import Failed Extensions')
|
||||||
)[1]
|
)
|
||||||
const extensionsHeader = wrapper.findAll(
|
const conflictsHeader = headers.find(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
(header) =>
|
||||||
)[2]
|
header.text().includes('Conflicts') &&
|
||||||
|
!header.text().includes('Import Failed')
|
||||||
|
)
|
||||||
|
const extensionsHeader = headers.find((header) =>
|
||||||
|
header.text().includes('Extensions at Risk')
|
||||||
|
)
|
||||||
|
|
||||||
|
expect(importFailedHeader).toBeDefined()
|
||||||
|
expect(conflictsHeader).toBeDefined()
|
||||||
|
expect(extensionsHeader).toBeDefined()
|
||||||
|
|
||||||
// Open import failed panel first
|
// Open import failed panel first
|
||||||
await importFailedHeader.trigger('click')
|
await importFailedHeader!.trigger('click')
|
||||||
|
|
||||||
// Verify import failed panel is open
|
// Verify import failed panel is open
|
||||||
expect((wrapper.vm as any).importFailedExpanded).toBe(true)
|
expect((wrapper.vm as any).importFailedExpanded).toBe(true)
|
||||||
@@ -292,7 +324,7 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
expect((wrapper.vm as any).extensionsExpanded).toBe(false)
|
expect((wrapper.vm as any).extensionsExpanded).toBe(false)
|
||||||
|
|
||||||
// Open conflicts panel
|
// Open conflicts panel
|
||||||
await conflictsHeader.trigger('click')
|
await conflictsHeader!.trigger('click')
|
||||||
|
|
||||||
// Verify conflicts panel is open and others are closed
|
// Verify conflicts panel is open and others are closed
|
||||||
expect((wrapper.vm as any).importFailedExpanded).toBe(false)
|
expect((wrapper.vm as any).importFailedExpanded).toBe(false)
|
||||||
@@ -300,7 +332,7 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
expect((wrapper.vm as any).extensionsExpanded).toBe(false)
|
expect((wrapper.vm as any).extensionsExpanded).toBe(false)
|
||||||
|
|
||||||
// Open extensions panel
|
// Open extensions panel
|
||||||
await extensionsHeader.trigger('click')
|
await extensionsHeader!.trigger('click')
|
||||||
|
|
||||||
// Verify extensions panel is open and others are closed
|
// Verify extensions panel is open and others are closed
|
||||||
expect((wrapper.vm as any).importFailedExpanded).toBe(false)
|
expect((wrapper.vm as any).importFailedExpanded).toBe(false)
|
||||||
@@ -317,28 +349,50 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
it('should display individual conflict details excluding import_failed', async () => {
|
it('should display individual conflict details excluding import_failed', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Expand conflicts panel (second header)
|
// Expand conflicts panel - find the one containing "Conflicts"
|
||||||
const conflictsHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[1]
|
)
|
||||||
await conflictsHeader.trigger('click')
|
const conflictsHeader = headers.find(
|
||||||
|
(header) =>
|
||||||
|
header.text().includes('Conflicts') &&
|
||||||
|
!header.text().includes('Import Failed')
|
||||||
|
)
|
||||||
|
expect(conflictsHeader).toBeDefined()
|
||||||
|
await conflictsHeader!.trigger('click')
|
||||||
|
|
||||||
// Should display conflict messages (excluding import_failed)
|
// Should display conflict messages (excluding import_failed)
|
||||||
const conflictItems = wrapper.findAll('.conflict-list-item')
|
// Look for the expanded panel content that contains conflict items
|
||||||
expect(conflictItems).toHaveLength(3) // 2 from Package1 + 1 from Package2
|
const expandedPanel = wrapper.find(
|
||||||
|
'[data-testid="conflict-dialog-panel-expanded"]'
|
||||||
|
)
|
||||||
|
expect(expandedPanel.exists()).toBe(true)
|
||||||
|
|
||||||
|
// Check that it contains the expected conflict details
|
||||||
|
const conflictElements = expandedPanel.findAll('.flex.h-6')
|
||||||
|
expect(conflictElements).toHaveLength(3) // 2 from Package1 + 1 from Package2
|
||||||
})
|
})
|
||||||
|
|
||||||
it('should display import failed packages separately', async () => {
|
it('should display import failed packages separately', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Expand import failed panel (first header)
|
// Expand import failed panel - find the one containing "Import Failed Extensions"
|
||||||
const importFailedHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[0]
|
)
|
||||||
await importFailedHeader.trigger('click')
|
const importFailedHeader = headers.find((header) =>
|
||||||
|
header.text().includes('Import Failed Extensions')
|
||||||
|
)
|
||||||
|
expect(importFailedHeader).toBeDefined()
|
||||||
|
await importFailedHeader!.trigger('click')
|
||||||
|
|
||||||
// Should display only import failed package
|
// Should display only import failed package
|
||||||
const importFailedItems = wrapper.findAll('.conflict-list-item')
|
const expandedPanel = wrapper.find(
|
||||||
|
'[data-testid="conflict-dialog-panel-expanded"]'
|
||||||
|
)
|
||||||
|
expect(expandedPanel.exists()).toBe(true)
|
||||||
|
|
||||||
|
const importFailedItems = expandedPanel.findAll('.flex.h-6')
|
||||||
expect(importFailedItems).toHaveLength(1)
|
expect(importFailedItems).toHaveLength(1)
|
||||||
expect(importFailedItems[0].text()).toContain('Test Package 3')
|
expect(importFailedItems[0].text()).toContain('Test Package 3')
|
||||||
})
|
})
|
||||||
@@ -346,16 +400,24 @@ describe('NodeConflictDialogContent', () => {
|
|||||||
it('should display all package names in extensions list', async () => {
|
it('should display all package names in extensions list', async () => {
|
||||||
const wrapper = createWrapper()
|
const wrapper = createWrapper()
|
||||||
|
|
||||||
// Expand extensions panel (third header)
|
// Expand extensions panel - find the one containing "Extensions at Risk"
|
||||||
const extensionsHeader = wrapper.findAll(
|
const headers = wrapper.findAll(
|
||||||
'[data-testid="conflict-dialog-panel-toggle"]'
|
'[data-testid="conflict-dialog-panel-toggle"]'
|
||||||
)[2]
|
)
|
||||||
await extensionsHeader.trigger('click')
|
const extensionsHeader = headers.find((header) =>
|
||||||
|
header.text().includes('Extensions at Risk')
|
||||||
|
)
|
||||||
|
expect(extensionsHeader).toBeDefined()
|
||||||
|
await extensionsHeader!.trigger('click')
|
||||||
|
|
||||||
// Should display all package names
|
// Should display all package names
|
||||||
expect(wrapper.text()).toContain('Test Package 1')
|
const expandedPanel = wrapper.find(
|
||||||
expect(wrapper.text()).toContain('Test Package 2')
|
'[data-testid="conflict-dialog-panel-expanded"]'
|
||||||
expect(wrapper.text()).toContain('Test Package 3')
|
)
|
||||||
|
expect(expandedPanel.exists()).toBe(true)
|
||||||
|
expect(expandedPanel.text()).toContain('Test Package 1')
|
||||||
|
expect(expandedPanel.text()).toContain('Test Package 2')
|
||||||
|
expect(expandedPanel.text()).toContain('Test Package 3')
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user