Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
5c4f87b
fix: Replace reactive feature flags with non-reactive approach
viva-jinyi Sep 3, 2025
404585b
fix: Add HelpCenter manager state handling and API version switching
viva-jinyi Sep 3, 2025
f4fae6d
fix: Simplify manager state determination and fix API timing issues
viva-jinyi Sep 3, 2025
6d1d864
fix: Correct manager state determination for non-v4 servers
viva-jinyi Sep 3, 2025
13f156f
chore: Remove debug console.log statements
viva-jinyi Sep 3, 2025
775faa0
test: Update manager state store tests to match new logic
viva-jinyi Sep 3, 2025
6d8ed5c
fix: Remove dynamic API version handling in manager service
viva-jinyi Sep 4, 2025
896eb37
refactor: Add helper functions to managerStateStore for better code r…
viva-jinyi Sep 4, 2025
ad29891
fix: Ensure SystemStats is loaded before conflict detection
viva-jinyi Sep 4, 2025
5b6d6f1
docs: Clarify feature flag default behavior in manager state
viva-jinyi Sep 4, 2025
e5fb47f
fix: Ensure consistent manager state handling for legacy commands
viva-jinyi Sep 4, 2025
2df02e0
refactor: centralize manager opening logic into managerStateStore
viva-jinyi Sep 4, 2025
fe139af
fix: use correct i18n import in managerStateStore
viva-jinyi Sep 4, 2025
abeed2e
feature: initial tab fix
viva-jinyi Sep 4, 2025
4603ca3
test: Fix managerStateStore test failures by adding missing mocks
viva-jinyi Sep 4, 2025
5de7788
refactor: convert managerStateStore to composable
viva-jinyi Sep 5, 2025
4098d34
refactor: use readonly computed properties instead of getter methods
viva-jinyi Sep 5, 2025
dd17988
fix: check isManagerEnabled check to GraphCanvas.vue to avoid the sid…
viva-jinyi Sep 5, 2025
61058a8
chore: console.log to console.debug
viva-jinyi Sep 5, 2025
1bdc990
chore: useConflictDetection().initializeConflictDetection()
viva-jinyi Sep 5, 2025
2386dec
test: add mockManagerDisabled option to disable manager in Playwright…
viva-jinyi Sep 5, 2025
aef2b7b
chore: text modified
viva-jinyi Sep 5, 2025
2cadf05
fix: resolve CI/CD failures by fixing manager initialization timing
viva-jinyi Sep 5, 2025
91c6c87
chore: modified the note
viva-jinyi Sep 5, 2025
75db082
fix: test code modified
viva-jinyi Sep 5, 2025
2b42259
fix: when manager is new manager ui, conflict detectetion should work
viva-jinyi Sep 5, 2025
9634186
fix: ensure fetch system stats before determine manager stats & when …
viva-jinyi Sep 6, 2025
ecbb78d
chore: unnecessary .value deleted & fetch name modified to refetch
viva-jinyi Sep 6, 2025
647a0f2
fix: ref type .value needed
viva-jinyi Sep 6, 2025
c9dd3de
chore: vue use until pattern for waiting initializing
viva-jinyi Sep 6, 2025
3f2ccd8
fix: .value added
viva-jinyi Sep 6, 2025
a363cdc
fix: useManagerState test to properly mock reactive refs
viva-jinyi Sep 6, 2025
1974b1f
fix: when system stats initialized, use until(systemStatsStore.isInit…
viva-jinyi Sep 6, 2025
eda2bf9
fix: test
viva-jinyi Sep 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
fix: test
  • Loading branch information
viva-jinyi committed Sep 6, 2025
commit eda2bf93bdf0d83670b159b1960d1f534501d1ad
14 changes: 12 additions & 2 deletions tests-ui/tests/store/releaseStore.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ vi.mock('@/utils/envUtil')
vi.mock('@/services/releaseService')
vi.mock('@/stores/settingStore')
vi.mock('@/stores/systemStatsStore')
vi.mock('@vueuse/core', () => ({
until: vi.fn(() => Promise.resolve()),
useStorage: vi.fn(() => ({ value: {} }))
}))

describe('useReleaseStore', () => {
let store: ReturnType<typeof useReleaseStore>
Expand Down Expand Up @@ -49,6 +53,7 @@ describe('useReleaseStore', () => {
comfyui_version: '1.0.0'
}
},
isInitialized: true,
refetchSystemStats: vi.fn(),
getFormFactor: vi.fn(() => 'git-windows')
}
Expand Down Expand Up @@ -334,12 +339,15 @@ describe('useReleaseStore', () => {
})

it('should fetch system stats if not available', async () => {
const { until } = await import('@vueuse/core')
mockSystemStatsStore.systemStats = null
mockSystemStatsStore.isInitialized = false
mockReleaseService.getReleases.mockResolvedValue([mockRelease])

await store.initialize()

expect(mockSystemStatsStore.refetchSystemStats).toHaveBeenCalled()
expect(until).toHaveBeenCalled()
expect(mockReleaseService.getReleases).toHaveBeenCalled()
})

it('should not set loading state when notifications disabled', async () => {
Expand Down Expand Up @@ -401,12 +409,14 @@ describe('useReleaseStore', () => {
})

it('should proceed with fetchReleases when system stats are not available', async () => {
const { until } = await import('@vueuse/core')
mockSystemStatsStore.systemStats = null
mockSystemStatsStore.isInitialized = false
mockReleaseService.getReleases.mockResolvedValue([mockRelease])

await store.fetchReleases()

expect(mockSystemStatsStore.refetchSystemStats).toHaveBeenCalled()
expect(until).toHaveBeenCalled()
expect(mockReleaseService.getReleases).toHaveBeenCalled()
})
})
Expand Down
29 changes: 25 additions & 4 deletions tests-ui/tests/store/versionCompatibilityStore.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,11 @@ vi.mock('@/config', () => ({

vi.mock('@/stores/systemStatsStore')

// Mock useStorage from VueUse
// Mock useStorage and until from VueUse
const mockDismissalStorage = ref({} as Record<string, number>)
vi.mock('@vueuse/core', () => ({
useStorage: vi.fn(() => mockDismissalStorage)
useStorage: vi.fn(() => mockDismissalStorage),
until: vi.fn(() => Promise.resolve())
}))

describe('useVersionCompatibilityStore', () => {
Expand All @@ -31,6 +32,7 @@ describe('useVersionCompatibilityStore', () => {

mockSystemStatsStore = {
systemStats: null,
isInitialized: false,
refetchSystemStats: vi.fn()
}

Expand All @@ -51,6 +53,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -68,6 +71,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.23.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -83,6 +87,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.24.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -98,6 +103,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: ''
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -113,6 +119,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: 'not-a-version' // invalid semver format
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -129,6 +136,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.23.0' // Required is 1.23.0, frontend 1.24.0 meets this
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -148,6 +156,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -167,6 +176,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -180,6 +190,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.24.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -195,6 +206,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -212,6 +224,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.24.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()

Expand All @@ -230,6 +243,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.checkVersionCompatibility()
store.dismissWarning()
Expand All @@ -252,6 +266,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.initialize()

Expand All @@ -270,6 +285,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.25.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.initialize()

Expand All @@ -289,6 +305,7 @@ describe('useVersionCompatibilityStore', () => {
required_frontend_version: '1.26.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.initialize()

Expand All @@ -298,24 +315,28 @@ describe('useVersionCompatibilityStore', () => {

describe('initialization', () => {
it('should fetch system stats if not available', async () => {
const { until } = await import('@vueuse/core')
mockSystemStatsStore.systemStats = null
mockSystemStatsStore.isInitialized = false

await store.initialize()

expect(mockSystemStatsStore.refetchSystemStats).toHaveBeenCalled()
expect(until).toHaveBeenCalled()
})

it('should not fetch system stats if already available', async () => {
const { until } = await import('@vueuse/core')
mockSystemStatsStore.systemStats = {
system: {
comfyui_version: '1.24.0',
required_frontend_version: '1.24.0'
}
}
mockSystemStatsStore.isInitialized = true

await store.initialize()

expect(mockSystemStatsStore.refetchSystemStats).not.toHaveBeenCalled()
expect(until).not.toHaveBeenCalled()
})
})
})
Loading