Fix health service tests

This commit is contained in:
2025-10-26 19:48:07 +01:00
parent 75e7b628ca
commit 777e07752b
4 changed files with 61 additions and 5 deletions

View File

@@ -12,12 +12,14 @@ import { AuthProvider } from '@/contexts/AuthContext'
vi.mock('@/lib/api', () => ({
instancesApi: {
list: vi.fn(),
get: vi.fn(),
create: vi.fn(),
update: vi.fn(),
start: vi.fn(),
stop: vi.fn(),
restart: vi.fn(),
delete: vi.fn(),
getHealth: vi.fn(),
},
serverApi: {
getHelp: vi.fn(),
@@ -30,9 +32,21 @@ vi.mock('@/lib/api', () => ({
vi.mock('@/lib/healthService', () => ({
healthService: {
subscribe: vi.fn(() => () => {}),
checkHealth: vi.fn(),
refreshHealth: vi.fn(() => Promise.resolve()),
checkHealthAfterOperation: vi.fn(),
performHealthCheck: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
},
checkHealth: vi.fn(),
checkHealth: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
}))
function renderApp() {

View File

@@ -7,7 +7,12 @@ import { BackendType } from '@/types/instance'
// Mock the health hook since we're not testing health logic here
vi.mock('@/hooks/useInstanceHealth', () => ({
useInstanceHealth: vi.fn(() => ({ status: 'ok', lastChecked: new Date() }))
useInstanceHealth: vi.fn(() => ({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
}))
}))
describe('InstanceCard - Instance Actions and State', () => {

View File

@@ -12,12 +12,14 @@ import { AuthProvider } from '@/contexts/AuthContext'
vi.mock('@/lib/api', () => ({
instancesApi: {
list: vi.fn(),
get: vi.fn(),
create: vi.fn(),
update: vi.fn(),
start: vi.fn(),
stop: vi.fn(),
restart: vi.fn(),
delete: vi.fn(),
getHealth: vi.fn(),
}
}))
@@ -25,9 +27,21 @@ vi.mock('@/lib/api', () => ({
vi.mock('@/lib/healthService', () => ({
healthService: {
subscribe: vi.fn(() => () => {}),
checkHealth: vi.fn(),
refreshHealth: vi.fn(() => Promise.resolve()),
checkHealthAfterOperation: vi.fn(),
performHealthCheck: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
},
checkHealth: vi.fn(),
checkHealth: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
}))
function renderInstanceList(editInstance = vi.fn()) {

View File

@@ -11,15 +11,38 @@ import { AuthProvider } from "../AuthContext";
vi.mock("@/lib/api", () => ({
instancesApi: {
list: vi.fn(),
get: vi.fn(),
create: vi.fn(),
update: vi.fn(),
start: vi.fn(),
stop: vi.fn(),
restart: vi.fn(),
delete: vi.fn(),
getHealth: vi.fn(),
},
}));
// Mock health service
vi.mock("@/lib/healthService", () => ({
healthService: {
subscribe: vi.fn(() => () => {}),
refreshHealth: vi.fn(() => Promise.resolve()),
checkHealthAfterOperation: vi.fn(),
performHealthCheck: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
},
checkHealth: vi.fn(() => Promise.resolve({
state: 'ready',
instanceStatus: 'running',
lastChecked: new Date(),
source: 'http'
})),
}));
// Test component to access context
function TestComponent() {
const {