Upgrade async GPU analysis and workbench UX

This commit is contained in:
Jens
2026-08-23 21:50:11 +02:00
parent 4040cbca7b
commit b996986d20
59 changed files with 3999 additions and 274 deletions
@@ -97,19 +97,25 @@ describe('useWorkbenchBootstrap', () => {
await waitFor(() => expect(systeem.loadCapabilities).toHaveBeenCalledOnce())
})
it('blijft geladen wanneer de gebruiker terugkeert naar de kaart', async () => {
it('herlaadt bezochte werkbladen niet wanneer een ander werkblad opent', async () => {
const state = options('project-1', 'ai')
const { rerender } = renderHook((props: { werkblad: string }) =>
useWorkbenchBootstrap({ ...state, activeWorkspace: props.werkblad }), {
initialProps: { werkblad: 'ai' },
})
await waitFor(() => expect(state.loadDetectionRuns).toHaveBeenCalledWith('project-1'))
const naEerste = state.loadDetectionRuns.mock.calls.length
const detectionRunCalls = state.loadDetectionRuns.mock.calls.length
const detectionResultCalls = state.loadDetectionResults.mock.calls.length
rerender({ werkblad: 'map' })
// Een bezocht werkblad blijft bijgewerkt worden; het wordt niet opnieuw
// dichtgezet zodra de gebruiker wegklikt.
expect(state.loadDetectionRuns.mock.calls.length).toBeGreaterThanOrEqual(naEerste)
rerender({ werkblad: 'exports' })
await waitFor(() => expect(state.loadExports).toHaveBeenCalledOnce())
rerender({ werkblad: 'analysis' })
await waitFor(() => expect(state.loadQualityChecks).toHaveBeenCalledOnce())
expect(state.loadDetectionRuns).toHaveBeenCalledTimes(detectionRunCalls)
expect(state.loadDetectionResults).toHaveBeenCalledTimes(detectionResultCalls)
expect(state.loadExports).toHaveBeenCalledOnce()
})
it('meldt een mislukte laadactie in plaats van haar weg te slikken', async () => {