All files / kernel-browser-runtime/src/rpc-handlers get-status.ts

100% Statements 3/3
100% Branches 0/0
100% Functions 1/1
100% Lines 3/3

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32                  5x                             5x       3x      
import type { MethodSpec, Handler } from '@metamask/kernel-rpc-methods';
import { EmptyJsonArray } from '@metamask/kernel-utils';
import { KernelStatusStruct } from '@metamask/ocap-kernel';
import type { Kernel, KernelStatus } from '@metamask/ocap-kernel';
 
export const getStatusSpec: MethodSpec<
  'getStatus',
  EmptyJsonArray,
  KernelStatus
> = {
  method: 'getStatus',
  params: EmptyJsonArray,
  result: KernelStatusStruct,
};
 
export type GetStatusHooks = {
  kernel: Pick<Kernel, 'getStatus'>;
};
 
export const getStatusHandler: Handler<
  'getStatus',
  EmptyJsonArray,
  Promise<KernelStatus>,
  GetStatusHooks
> = {
  ...getStatusSpec,
  hooks: { kernel: true },
  implementation: async ({ kernel }: GetStatusHooks): Promise<KernelStatus> => {
    return await kernel.getStatus();
  },
};