test(machines): atualizar mock para suportar tabela machineHeartbeats

Adicionar mock da nova tabela machineHeartbeats com metodo first()
para corrigir teste getById apos refatoracao do heartbeat.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
esdrasrenan 2025-12-09 23:30:25 -03:00
parent 4fbd521fa8
commit 48d9de8dd1

View file

@ -55,18 +55,32 @@ describe("convex.machines.getById", () => {
if (id === machine._id) return machine
return null
}),
query: vi.fn((_table: string) => ({
withIndex: vi.fn((_name: string, _cb: unknown) => ({
collect: vi.fn(async () => [
{ revoked: false, expiresAt: FIXED_NOW + 60_000, lastUsedAt: FIXED_NOW - 1000, usageCount: 5 },
]),
take: vi.fn(async () => [
{ revoked: false, expiresAt: FIXED_NOW + 60_000, lastUsedAt: FIXED_NOW - 1000, usageCount: 5 },
]),
})),
collect: vi.fn(async () => []),
take: vi.fn(async () => []),
})),
query: vi.fn((table: string) => {
// Mock para machineHeartbeats - retorna o lastHeartbeatAt da nova tabela
if (table === "machineHeartbeats") {
return {
withIndex: vi.fn((_name: string, _cb: unknown) => ({
first: vi.fn(async () => ({ machineId: machine._id, lastHeartbeatAt: FIXED_NOW - 1000 })),
collect: vi.fn(async () => [{ machineId: machine._id, lastHeartbeatAt: FIXED_NOW - 1000 }]),
take: vi.fn(async () => [{ machineId: machine._id, lastHeartbeatAt: FIXED_NOW - 1000 }]),
})),
}
}
// Mock para machineTokens e outras tabelas
return {
withIndex: vi.fn((_name: string, _cb: unknown) => ({
first: vi.fn(async () => null),
collect: vi.fn(async () => [
{ revoked: false, expiresAt: FIXED_NOW + 60_000, lastUsedAt: FIXED_NOW - 1000, usageCount: 5 },
]),
take: vi.fn(async () => [
{ revoked: false, expiresAt: FIXED_NOW + 60_000, lastUsedAt: FIXED_NOW - 1000, usageCount: 5 },
]),
})),
collect: vi.fn(async () => []),
take: vi.fn(async () => []),
}
}),
}
const ctx = { db } as unknown as Parameters<typeof getByIdHandler>[0]