18 lines
810 B
TypeScript
18 lines
810 B
TypeScript
import { tap, expect } from '@git.zone/tstest/tapbundle';
|
|
import { parseServerSentEvent } from '../packages/opencode-bridge/ts/index.js';
|
|
|
|
tap.test('should parse named opencode sse events', async () => {
|
|
const event = parseServerSentEvent('id: 1\nevent: server.connected\ndata: {"type":"server.connected"}\n');
|
|
expect(event!.id).toEqual('1');
|
|
expect(event!.type).toEqual('server.connected');
|
|
expect(event!.data).toEqual({ type: 'server.connected' });
|
|
});
|
|
|
|
tap.test('should infer opencode event type from json data', async () => {
|
|
const event = parseServerSentEvent('data: {"type":"session.updated","properties":{"id":"abc"}}\n');
|
|
expect(event!.type).toEqual('session.updated');
|
|
expect(event!.data).toEqual({ type: 'session.updated', properties: { id: 'abc' } });
|
|
});
|
|
|
|
export default tap.start();
|