import { bench, describe } from 'vitest' import { EventStorageKV } from '../src/event-storage/event-storage-kv.js' import { KVStorageInMemory } from '../src/kv-storage/kv-storage-in-memory.js' const events = new EventStorageKV(new KVStorageInMemory()) const streams = events.child('streams') const ids = await streams.append( 'long', Array.from({ length: 10_000 }, (_, i) => ({ i })), ) const middle = ids[5000] let s = 0 describe('events', () => { bench('append 1 event', async () => { await streams.append(`s${s++ % 1000}`, [{ type: 'e' }]) }) bench('read 100 events from the middle of 10k', async () => { for await (const _ of streams.read('long', { after: middle, limit: 100 })) { } }) bench('read full 10k-event stream', async () => { for await (const _ of streams.read('long')) { } }) })