(mockEnv?: MockEnv)
| 372 | } |
| 373 | |
| 374 | export function makeMockWaveEnv(mockEnv?: MockEnv): MockWaveEnv { |
| 375 | const overrides: MockEnv = mockEnv ?? {}; |
| 376 | const tabId = overrides.tabId ?? PreviewTabId; |
| 377 | const defaultMockWaveObjs: Record<string, WaveObj> = { |
| 378 | [`workspace:${PreviewWorkspaceId}`]: { |
| 379 | otype: "workspace", |
| 380 | oid: PreviewWorkspaceId, |
| 381 | version: 1, |
| 382 | name: "Preview Workspace", |
| 383 | tabids: [PreviewTabId], |
| 384 | activetabid: PreviewTabId, |
| 385 | meta: {}, |
| 386 | } as Workspace, |
| 387 | [`tab:${PreviewTabId}`]: { |
| 388 | otype: "tab", |
| 389 | oid: PreviewTabId, |
| 390 | version: 1, |
| 391 | name: "Preview Tab", |
| 392 | blockids: [WebBlockId, SysinfoBlockId, ProcessViewerBlockId], |
| 393 | meta: {}, |
| 394 | } as Tab, |
| 395 | [`block:${WebBlockId}`]: { |
| 396 | otype: "block", |
| 397 | oid: WebBlockId, |
| 398 | version: 1, |
| 399 | meta: { |
| 400 | view: "web", |
| 401 | }, |
| 402 | } as Block, |
| 403 | [`block:${SysinfoBlockId}`]: { |
| 404 | otype: "block", |
| 405 | oid: SysinfoBlockId, |
| 406 | version: 1, |
| 407 | meta: { |
| 408 | view: "sysinfo", |
| 409 | connection: MockSysinfoConnection, |
| 410 | "sysinfo:type": "CPU + Mem", |
| 411 | "graph:numpoints": 90, |
| 412 | }, |
| 413 | } as Block, |
| 414 | [`block:${ProcessViewerBlockId}`]: { |
| 415 | otype: "block", |
| 416 | oid: ProcessViewerBlockId, |
| 417 | version: 1, |
| 418 | meta: { |
| 419 | view: "processviewer", |
| 420 | }, |
| 421 | } as Block, |
| 422 | }; |
| 423 | const defaultAtoms: Partial<GlobalAtomsType> = { |
| 424 | uiContext: atom({ windowid: PreviewWindowId, activetabid: PreviewTabId } as UIContext), |
| 425 | staticTabId: atom(PreviewTabId), |
| 426 | workspaceId: atom(PreviewWorkspaceId), |
| 427 | }; |
| 428 | const mergedOverrides: MockEnv = { |
| 429 | ...overrides, |
| 430 | tabId, |
| 431 | mockWaveObjs: { ...defaultMockWaveObjs, ...(overrides.mockWaveObjs ?? {}) }, |
no test coverage detected