@wavequery/conductor
Version:
Modular LLM orchestration framework
46 lines • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const context_manager_1 = require("../context-manager");
const memory_store_1 = require("../memory-store");
const store_provider_1 = require("../store-provider");
describe('ContextManager', () => {
let contextManager;
let store;
beforeEach(() => {
store = new memory_store_1.MemoryStore({
provider: new store_provider_1.InMemoryStore(),
namespace: 'test'
});
contextManager = new context_manager_1.ContextManager(store, 'test-context');
});
it('should initialize empty context', async () => {
await contextManager.initialize();
const summary = await contextManager.summarize();
expect(summary.messageCount).toBe(0);
});
it('should add and retrieve messages', async () => {
await contextManager.addMessage('user', 'test message');
const messages = contextManager.getRecentMessages();
expect(messages).toHaveLength(1);
expect(messages[0].content).toBe('test message');
});
it('should manage state', async () => {
await contextManager.setState('test', 123);
const value = await contextManager.getState('test');
expect(value).toBe(123);
});
it('should persist context between instances', async () => {
await contextManager.addMessage('user', 'test message');
const newContextManager = new context_manager_1.ContextManager(store, 'test-context');
await newContextManager.initialize();
const messages = newContextManager.getRecentMessages();
expect(messages).toHaveLength(1);
});
it('should clear context', async () => {
await contextManager.addMessage('user', 'test message');
await contextManager.clear();
const summary = await contextManager.summarize();
expect(summary.messageCount).toBe(0);
});
});
//# sourceMappingURL=context-manager.test.js.map