@multiplayer-app/ai-agent-mongo 0.1.0-beta.2 → 0.1.0-beta.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/__tests__/{helpers.js → helpers.cjs} +2 -2
- package/dist/cjs/__tests__/{helpers.js.map → helpers.cjs.map} +1 -1
- package/dist/cjs/__tests__/repositories/{MongoAgentChatRepository.test.js → MongoAgentChatRepository.test.cjs} +58 -58
- package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.cjs.map +1 -0
- package/dist/cjs/__tests__/repositories/{MongoAgentMessageRepository.test.js → MongoAgentMessageRepository.test.cjs} +72 -75
- package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.cjs.map +1 -0
- package/dist/cjs/__tests__/schemas/{AgentChatSchema.test.js → AgentChatSchema.test.cjs} +17 -17
- package/dist/cjs/__tests__/schemas/AgentChatSchema.test.cjs.map +1 -0
- package/dist/cjs/__tests__/schemas/{AgentMessageSchema.test.js → AgentMessageSchema.test.cjs} +32 -37
- package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.cjs.map +1 -0
- package/dist/cjs/index.cjs +26 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.d.ts +6 -5
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/mongo/{index.js → index.cjs} +6 -22
- package/dist/cjs/mongo/index.cjs.map +1 -0
- package/dist/cjs/mongo/index.d.ts +1 -4
- package/dist/cjs/mongo/index.d.ts.map +1 -1
- package/dist/cjs/repositories/{MongoAgentChatRepository.js → MongoAgentChatRepository.cjs} +25 -25
- package/dist/cjs/repositories/MongoAgentChatRepository.cjs.map +1 -0
- package/dist/cjs/repositories/{MongoAgentMessageRepository.js → MongoAgentMessageRepository.cjs} +17 -17
- package/dist/cjs/repositories/{MongoAgentMessageRepository.js.map → MongoAgentMessageRepository.cjs.map} +1 -1
- package/dist/cjs/repositories/{index.js → index.cjs} +2 -2
- package/dist/cjs/repositories/{index.js.map → index.cjs.map} +1 -1
- package/dist/cjs/repositories/index.d.ts +2 -2
- package/dist/cjs/repositories/index.d.ts.map +1 -1
- package/dist/cjs/schemas/{AgentChatSchema.js → AgentChatSchema.cjs} +4 -4
- package/dist/cjs/schemas/AgentChatSchema.cjs.map +1 -0
- package/dist/cjs/schemas/AgentChatSchema.d.ts +1 -1
- package/dist/cjs/schemas/AgentChatSchema.d.ts.map +1 -1
- package/dist/cjs/schemas/{AgentMessageSchema.js → AgentMessageSchema.cjs} +10 -10
- package/dist/cjs/schemas/AgentMessageSchema.cjs.map +1 -0
- package/dist/cjs/schemas/AgentMessageSchema.d.ts +1 -1
- package/dist/cjs/schemas/AgentMessageSchema.d.ts.map +1 -1
- package/dist/cjs/schemas/{index.js → index.cjs} +2 -2
- package/dist/cjs/schemas/{index.js.map → index.cjs.map} +1 -1
- package/dist/cjs/schemas/index.d.ts +2 -2
- package/dist/cjs/schemas/index.d.ts.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/esm/__tests__/helpers.js +1 -1
- package/dist/esm/__tests__/helpers.js.map +1 -1
- package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.js +10 -10
- package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.js.map +1 -1
- package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.js +14 -17
- package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.js.map +1 -1
- package/dist/esm/__tests__/schemas/AgentChatSchema.test.js +5 -5
- package/dist/esm/__tests__/schemas/AgentChatSchema.test.js.map +1 -1
- package/dist/esm/__tests__/schemas/AgentMessageSchema.test.js +11 -16
- package/dist/esm/__tests__/schemas/AgentMessageSchema.test.js.map +1 -1
- package/dist/esm/index.d.ts +6 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +7 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/mongo/index.d.ts +1 -4
- package/dist/esm/mongo/index.d.ts.map +1 -1
- package/dist/esm/mongo/index.js +4 -20
- package/dist/esm/mongo/index.js.map +1 -1
- package/dist/esm/repositories/MongoAgentChatRepository.js +7 -7
- package/dist/esm/repositories/MongoAgentChatRepository.js.map +1 -1
- package/dist/esm/repositories/MongoAgentMessageRepository.js +1 -1
- package/dist/esm/repositories/MongoAgentMessageRepository.js.map +1 -1
- package/dist/esm/repositories/index.d.ts +2 -2
- package/dist/esm/repositories/index.d.ts.map +1 -1
- package/dist/esm/repositories/index.js +2 -2
- package/dist/esm/repositories/index.js.map +1 -1
- package/dist/esm/schemas/AgentChatSchema.d.ts +1 -1
- package/dist/esm/schemas/AgentChatSchema.d.ts.map +1 -1
- package/dist/esm/schemas/AgentChatSchema.js +1 -1
- package/dist/esm/schemas/AgentChatSchema.js.map +1 -1
- package/dist/esm/schemas/AgentMessageSchema.d.ts +1 -1
- package/dist/esm/schemas/AgentMessageSchema.d.ts.map +1 -1
- package/dist/esm/schemas/AgentMessageSchema.js +1 -1
- package/dist/esm/schemas/AgentMessageSchema.js.map +1 -1
- package/dist/esm/schemas/index.d.ts +2 -2
- package/dist/esm/schemas/index.d.ts.map +1 -1
- package/dist/esm/schemas/index.js +2 -2
- package/dist/esm/schemas/index.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/package.json +42 -44
- package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.js.map +0 -1
- package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.js.map +0 -1
- package/dist/cjs/__tests__/schemas/AgentChatSchema.test.js.map +0 -1
- package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.js.map +0 -1
- package/dist/cjs/index.js +0 -25
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/mongo/encryption.d.ts +0 -66
- package/dist/cjs/mongo/encryption.d.ts.map +0 -1
- package/dist/cjs/mongo/encryption.js +0 -149
- package/dist/cjs/mongo/encryption.js.map +0 -1
- package/dist/cjs/mongo/index.js.map +0 -1
- package/dist/cjs/repositories/MongoAgentChatRepository.js.map +0 -1
- package/dist/cjs/schemas/AgentChatSchema.js.map +0 -1
- package/dist/cjs/schemas/AgentMessageSchema.js.map +0 -1
- package/dist/esm/mongo/encryption.d.ts +0 -66
- package/dist/esm/mongo/encryption.d.ts.map +0 -1
- package/dist/esm/mongo/encryption.js +0 -140
- package/dist/esm/mongo/encryption.js.map +0 -1
- package/dist/tsconfig.cjs.tsbuildinfo +0 -1
- package/dist/tsconfig.esm.tsbuildinfo +0 -1
- /package/dist/cjs/__tests__/{setup.js → setup.cjs} +0 -0
- /package/dist/cjs/__tests__/{setup.js.map → setup.cjs.map} +0 -0
- /package/dist/cjs/mongo/{config.js → config.cjs} +0 -0
- /package/dist/cjs/mongo/{config.js.map → config.cjs.map} +0 -0
- /package/dist/cjs/mongo/{logger.js → logger.cjs} +0 -0
- /package/dist/cjs/mongo/{logger.js.map → logger.cjs.map} +0 -0
|
@@ -6,12 +6,12 @@ exports.createTestMessage = createTestMessage;
|
|
|
6
6
|
exports.createTestMessageWithToolCalls = createTestMessageWithToolCalls;
|
|
7
7
|
exports.createTestMessageWithAttachments = createTestMessageWithAttachments;
|
|
8
8
|
const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
|
|
9
|
-
const
|
|
9
|
+
const mongo_1 = require("../mongo/index.cjs");
|
|
10
10
|
/**
|
|
11
11
|
* Helper to clear all collections between tests
|
|
12
12
|
*/
|
|
13
13
|
async function clearCollections() {
|
|
14
|
-
const collections =
|
|
14
|
+
const collections = mongo_1.mongoose.connection.collections;
|
|
15
15
|
for (const key in collections) {
|
|
16
16
|
await collections[key].deleteMany({});
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/__tests__/helpers.ts"],"names":[],"mappings":";;AAOA,4CAKC;AAKD,wCASC;AAKD,8CAaC;AAKD,wEAkBC;AAKD,4EAgBC;AAvFD,oEAAwG;AACxG,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/__tests__/helpers.ts"],"names":[],"mappings":";;AAOA,4CAKC;AAKD,wCASC;AAKD,8CAaC;AAKD,wEAkBC;AAKD,4EAgBC;AAvFD,oEAAwG;AACxG,oCAAoC;AAEpC;;GAEG;AACI,KAAK,UAAU,gBAAgB;IACpC,MAAM,WAAW,GAAG,gBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;IACpD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,SAA8B;IAC3D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,OAAO;QACL,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,cAAc;QAC1B,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,EAAE;QACZ,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,MAAc,EACd,SAAiC;IAEjC,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,4BAAW,CAAC,IAAI;QACtB,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,EAAE;QACf,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,8BAA8B,CAC5C,MAAc,EACd,SAAiC;IAEjC,OAAO,iBAAiB,CAAC,MAAM,EAAE;QAC/B,IAAI,EAAE,4BAAW,CAAC,SAAS;QAC3B,OAAO,EAAE,mBAAmB;QAC5B,SAAS,EAAE;YACT;gBACE,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;gBACxB,MAAM,EAAE,oCAAmB,CAAC,OAAO;gBACnC,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD,GAAG,SAAS;KACb,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,gCAAgC,CAC9C,MAAc,EACd,SAAiC;IAEjC,OAAO,iBAAiB,CAAC,MAAM,EAAE;QAC/B,WAAW,EAAE;YACX;gBACE,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,oCAAmB,CAAC,IAAI;gBAC9B,IAAI,EAAE,UAAU;gBAChB,GAAG,EAAE,8BAA8B;gBACnC,QAAQ,EAAE,YAAY;aACvB;SACF;QACD,GAAG,SAAS;KACb,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const vitest_1 = require("vitest");
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const MongoAgentChatRepository_1 = require("../../repositories/MongoAgentChatRepository.cjs");
|
|
5
|
+
const helpers_1 = require("../helpers.cjs");
|
|
6
6
|
(0, vitest_1.describe)('MongoAgentChatRepository', () => {
|
|
7
7
|
let repository;
|
|
8
8
|
(0, vitest_1.beforeEach)(async () => {
|
|
9
|
-
repository = new
|
|
10
|
-
await (0,
|
|
9
|
+
repository = new MongoAgentChatRepository_1.MongoAgentChatRepository();
|
|
10
|
+
await (0, helpers_1.clearCollections)();
|
|
11
11
|
});
|
|
12
12
|
(0, vitest_1.describe)('create', () => {
|
|
13
13
|
(0, vitest_1.it)('should create a new chat', async () => {
|
|
14
|
-
const chatData = (0,
|
|
14
|
+
const chatData = (0, helpers_1.createTestChat)({
|
|
15
15
|
title: 'New Chat',
|
|
16
16
|
contextKey: 'test-context',
|
|
17
17
|
userId: 'user-123',
|
|
@@ -26,7 +26,7 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
26
26
|
(0, vitest_1.expect)(chat.updatedAt).toBeDefined();
|
|
27
27
|
});
|
|
28
28
|
(0, vitest_1.it)('should create a guest chat (no userId)', async () => {
|
|
29
|
-
const chatData = (0,
|
|
29
|
+
const chatData = (0, helpers_1.createTestChat)({
|
|
30
30
|
title: 'Guest Chat',
|
|
31
31
|
contextKey: 'test-context',
|
|
32
32
|
});
|
|
@@ -36,7 +36,7 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
36
36
|
(0, vitest_1.expect)(chat.userId).toBeUndefined();
|
|
37
37
|
});
|
|
38
38
|
(0, vitest_1.it)('should include metadata when provided', async () => {
|
|
39
|
-
const chatData = (0,
|
|
39
|
+
const chatData = (0, helpers_1.createTestChat)({
|
|
40
40
|
metadata: { key: 'value', count: 42 },
|
|
41
41
|
});
|
|
42
42
|
const chat = await repository.create(chatData);
|
|
@@ -45,12 +45,12 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
45
45
|
});
|
|
46
46
|
(0, vitest_1.describe)('findById', () => {
|
|
47
47
|
(0, vitest_1.it)('should find a chat by id', async () => {
|
|
48
|
-
const chatData = (0,
|
|
48
|
+
const chatData = (0, helpers_1.createTestChat)({ title: 'Find Me' });
|
|
49
49
|
const created = await repository.create(chatData);
|
|
50
50
|
const found = await repository.findById(created.id);
|
|
51
51
|
(0, vitest_1.expect)(found).toBeDefined();
|
|
52
|
-
(0, vitest_1.expect)(found
|
|
53
|
-
(0, vitest_1.expect)(found
|
|
52
|
+
(0, vitest_1.expect)(found?.id).toBe(created.id);
|
|
53
|
+
(0, vitest_1.expect)(found?.title).toBe('Find Me');
|
|
54
54
|
});
|
|
55
55
|
(0, vitest_1.it)('should return null if chat not found', async () => {
|
|
56
56
|
const found = await repository.findById('507f1f77bcf86cd799439011');
|
|
@@ -59,40 +59,40 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
59
59
|
});
|
|
60
60
|
(0, vitest_1.describe)('find', () => {
|
|
61
61
|
(0, vitest_1.it)('should find all chats when no filter provided', async () => {
|
|
62
|
-
await repository.create((0,
|
|
63
|
-
await repository.create((0,
|
|
64
|
-
await repository.create((0,
|
|
62
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 1' }));
|
|
63
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 2' }));
|
|
64
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 3' }));
|
|
65
65
|
const chats = await repository.find();
|
|
66
66
|
(0, vitest_1.expect)(chats).toHaveLength(3);
|
|
67
67
|
});
|
|
68
68
|
(0, vitest_1.it)('should find chats by filter', async () => {
|
|
69
|
-
await repository.create((0,
|
|
70
|
-
await repository.create((0,
|
|
71
|
-
await repository.create((0,
|
|
69
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 1', contextKey: 'ctx-1' }));
|
|
70
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 2', contextKey: 'ctx-1' }));
|
|
71
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Chat 3', contextKey: 'ctx-2' }));
|
|
72
72
|
const chats = await repository.find({ contextKey: 'ctx-1' });
|
|
73
73
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
74
74
|
(0, vitest_1.expect)(chats.every(c => c.contextKey === 'ctx-1')).toBe(true);
|
|
75
75
|
});
|
|
76
76
|
(0, vitest_1.it)('should find chat by id in filter', async () => {
|
|
77
|
-
const created = await repository.create((0,
|
|
77
|
+
const created = await repository.create((0, helpers_1.createTestChat)({ title: 'Specific Chat' }));
|
|
78
78
|
const chats = await repository.find({ id: created.id });
|
|
79
79
|
(0, vitest_1.expect)(chats).toHaveLength(1);
|
|
80
80
|
(0, vitest_1.expect)(chats[0].id).toBe(created.id);
|
|
81
81
|
});
|
|
82
82
|
(0, vitest_1.it)('should find chats by userId', async () => {
|
|
83
|
-
await repository.create((0,
|
|
84
|
-
await repository.create((0,
|
|
85
|
-
await repository.create((0,
|
|
83
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
84
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
85
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-2' }));
|
|
86
86
|
const chats = await repository.find({ userId: 'user-1' });
|
|
87
87
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
88
88
|
});
|
|
89
89
|
});
|
|
90
90
|
(0, vitest_1.describe)('findOne', () => {
|
|
91
91
|
(0, vitest_1.it)('should find a single chat matching filter', async () => {
|
|
92
|
-
await repository.create((0,
|
|
92
|
+
await repository.create((0, helpers_1.createTestChat)({ title: 'Unique Chat', contextKey: 'unique' }));
|
|
93
93
|
const chat = await repository.findOne({ contextKey: 'unique' });
|
|
94
94
|
(0, vitest_1.expect)(chat).toBeDefined();
|
|
95
|
-
(0, vitest_1.expect)(chat
|
|
95
|
+
(0, vitest_1.expect)(chat?.title).toBe('Unique Chat');
|
|
96
96
|
});
|
|
97
97
|
(0, vitest_1.it)('should return null if no match found', async () => {
|
|
98
98
|
const chat = await repository.findOne({ contextKey: 'non-existent' });
|
|
@@ -101,19 +101,19 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
101
101
|
});
|
|
102
102
|
(0, vitest_1.describe)('update', () => {
|
|
103
103
|
(0, vitest_1.it)('should update chat fields', async () => {
|
|
104
|
-
const created = await repository.create((0,
|
|
104
|
+
const created = await repository.create((0, helpers_1.createTestChat)({ title: 'Original' }));
|
|
105
105
|
// Add a small delay to ensure timestamp difference
|
|
106
106
|
await new Promise(resolve => setTimeout(resolve, 10));
|
|
107
107
|
const updated = await repository.update(created.id, { title: 'Updated' });
|
|
108
108
|
(0, vitest_1.expect)(updated).toBeDefined();
|
|
109
|
-
(0, vitest_1.expect)(updated
|
|
110
|
-
(0, vitest_1.expect)(updated
|
|
109
|
+
(0, vitest_1.expect)(updated?.title).toBe('Updated');
|
|
110
|
+
(0, vitest_1.expect)(updated?.updatedAt).not.toBe(created.updatedAt);
|
|
111
111
|
(0, vitest_1.expect)(new Date(updated.updatedAt).getTime()).toBeGreaterThan(new Date(created.updatedAt).getTime());
|
|
112
112
|
});
|
|
113
113
|
(0, vitest_1.it)('should update metadata', async () => {
|
|
114
|
-
const created = await repository.create((0,
|
|
114
|
+
const created = await repository.create((0, helpers_1.createTestChat)({ metadata: { old: 'data' } }));
|
|
115
115
|
const updated = await repository.update(created.id, { metadata: { new: 'data' } });
|
|
116
|
-
(0, vitest_1.expect)(updated
|
|
116
|
+
(0, vitest_1.expect)(updated?.metadata).toEqual({ new: 'data' });
|
|
117
117
|
});
|
|
118
118
|
(0, vitest_1.it)('should return null if chat not found', async () => {
|
|
119
119
|
const updated = await repository.update('507f1f77bcf86cd799439011', { title: 'Updated' });
|
|
@@ -122,7 +122,7 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
122
122
|
});
|
|
123
123
|
(0, vitest_1.describe)('delete', () => {
|
|
124
124
|
(0, vitest_1.it)('should delete a chat by id', async () => {
|
|
125
|
-
const created = await repository.create((0,
|
|
125
|
+
const created = await repository.create((0, helpers_1.createTestChat)());
|
|
126
126
|
const deleted = await repository.delete(created.id);
|
|
127
127
|
(0, vitest_1.expect)(deleted).toBe(true);
|
|
128
128
|
const found = await repository.findById(created.id);
|
|
@@ -135,7 +135,7 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
135
135
|
});
|
|
136
136
|
(0, vitest_1.describe)('exists', () => {
|
|
137
137
|
(0, vitest_1.it)('should return true if chat exists', async () => {
|
|
138
|
-
const created = await repository.create((0,
|
|
138
|
+
const created = await repository.create((0, helpers_1.createTestChat)());
|
|
139
139
|
const exists = await repository.exists(created.id);
|
|
140
140
|
(0, vitest_1.expect)(exists).toBe(true);
|
|
141
141
|
});
|
|
@@ -146,25 +146,25 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
146
146
|
});
|
|
147
147
|
(0, vitest_1.describe)('count', () => {
|
|
148
148
|
(0, vitest_1.it)('should count all chats when no filter', async () => {
|
|
149
|
-
await repository.create((0,
|
|
150
|
-
await repository.create((0,
|
|
151
|
-
await repository.create((0,
|
|
149
|
+
await repository.create((0, helpers_1.createTestChat)());
|
|
150
|
+
await repository.create((0, helpers_1.createTestChat)());
|
|
151
|
+
await repository.create((0, helpers_1.createTestChat)());
|
|
152
152
|
const count = await repository.count();
|
|
153
153
|
(0, vitest_1.expect)(count).toBe(3);
|
|
154
154
|
});
|
|
155
155
|
(0, vitest_1.it)('should count chats matching filter', async () => {
|
|
156
|
-
await repository.create((0,
|
|
157
|
-
await repository.create((0,
|
|
158
|
-
await repository.create((0,
|
|
156
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
157
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
158
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-2' }));
|
|
159
159
|
const count = await repository.count({ contextKey: 'ctx-1' });
|
|
160
160
|
(0, vitest_1.expect)(count).toBe(2);
|
|
161
161
|
});
|
|
162
162
|
});
|
|
163
163
|
(0, vitest_1.describe)('findByUserId', () => {
|
|
164
164
|
(0, vitest_1.it)('should find all chats for a user', async () => {
|
|
165
|
-
await repository.create((0,
|
|
166
|
-
await repository.create((0,
|
|
167
|
-
await repository.create((0,
|
|
165
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
166
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
167
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-2' }));
|
|
168
168
|
const chats = await repository.findByUserId('user-1');
|
|
169
169
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
170
170
|
(0, vitest_1.expect)(chats.every(c => c.userId === 'user-1')).toBe(true);
|
|
@@ -176,9 +176,9 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
176
176
|
});
|
|
177
177
|
(0, vitest_1.describe)('findByContextKey', () => {
|
|
178
178
|
(0, vitest_1.it)('should find all chats for a context key', async () => {
|
|
179
|
-
await repository.create((0,
|
|
180
|
-
await repository.create((0,
|
|
181
|
-
await repository.create((0,
|
|
179
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
180
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
181
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-2' }));
|
|
182
182
|
const chats = await repository.findByContextKey('ctx-1');
|
|
183
183
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
184
184
|
(0, vitest_1.expect)(chats.every(c => c.contextKey === 'ctx-1')).toBe(true);
|
|
@@ -186,10 +186,10 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
186
186
|
});
|
|
187
187
|
(0, vitest_1.describe)('findByUserIdAndContextKey', () => {
|
|
188
188
|
(0, vitest_1.it)('should find chats matching both userId and contextKey', async () => {
|
|
189
|
-
await repository.create((0,
|
|
190
|
-
await repository.create((0,
|
|
191
|
-
await repository.create((0,
|
|
192
|
-
await repository.create((0,
|
|
189
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1', contextKey: 'ctx-1' }));
|
|
190
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1', contextKey: 'ctx-1' }));
|
|
191
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1', contextKey: 'ctx-2' }));
|
|
192
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-2', contextKey: 'ctx-1' }));
|
|
193
193
|
const chats = await repository.findByUserIdAndContextKey('user-1', 'ctx-1');
|
|
194
194
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
195
195
|
(0, vitest_1.expect)(chats.every(c => c.userId === 'user-1' && c.contextKey === 'ctx-1')).toBe(true);
|
|
@@ -197,10 +197,10 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
197
197
|
});
|
|
198
198
|
(0, vitest_1.describe)('findGuestChatsByContextKey', () => {
|
|
199
199
|
(0, vitest_1.it)('should find guest chats (no userId) for a context key', async () => {
|
|
200
|
-
await repository.create((0,
|
|
201
|
-
await repository.create((0,
|
|
202
|
-
await repository.create((0,
|
|
203
|
-
await repository.create((0,
|
|
200
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' })); // guest
|
|
201
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' })); // guest
|
|
202
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1', contextKey: 'ctx-1' }));
|
|
203
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-2' })); // guest
|
|
204
204
|
const chats = await repository.findGuestChatsByContextKey('ctx-1');
|
|
205
205
|
(0, vitest_1.expect)(chats).toHaveLength(2);
|
|
206
206
|
(0, vitest_1.expect)(chats.every(c => !c.userId && c.contextKey === 'ctx-1')).toBe(true);
|
|
@@ -208,12 +208,12 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
208
208
|
});
|
|
209
209
|
(0, vitest_1.describe)('updateTitle', () => {
|
|
210
210
|
(0, vitest_1.it)('should update chat title', async () => {
|
|
211
|
-
const created = await repository.create((0,
|
|
211
|
+
const created = await repository.create((0, helpers_1.createTestChat)({ title: 'Old Title' }));
|
|
212
212
|
// Add a small delay to ensure timestamp difference
|
|
213
213
|
await new Promise(resolve => setTimeout(resolve, 10));
|
|
214
214
|
const updated = await repository.updateTitle(created.id, 'New Title');
|
|
215
|
-
(0, vitest_1.expect)(updated
|
|
216
|
-
(0, vitest_1.expect)(updated
|
|
215
|
+
(0, vitest_1.expect)(updated?.title).toBe('New Title');
|
|
216
|
+
(0, vitest_1.expect)(updated?.updatedAt).not.toBe(created.updatedAt);
|
|
217
217
|
(0, vitest_1.expect)(new Date(updated.updatedAt).getTime()).toBeGreaterThan(new Date(created.updatedAt).getTime());
|
|
218
218
|
});
|
|
219
219
|
(0, vitest_1.it)('should return null if chat not found', async () => {
|
|
@@ -223,9 +223,9 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
223
223
|
});
|
|
224
224
|
(0, vitest_1.describe)('deleteByUserId', () => {
|
|
225
225
|
(0, vitest_1.it)('should delete all chats for a user', async () => {
|
|
226
|
-
await repository.create((0,
|
|
227
|
-
await repository.create((0,
|
|
228
|
-
await repository.create((0,
|
|
226
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
227
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-1' }));
|
|
228
|
+
await repository.create((0, helpers_1.createTestChat)({ userId: 'user-2' }));
|
|
229
229
|
const deletedCount = await repository.deleteByUserId('user-1');
|
|
230
230
|
(0, vitest_1.expect)(deletedCount).toBe(2);
|
|
231
231
|
const remaining = await repository.findByUserId('user-1');
|
|
@@ -238,9 +238,9 @@ const helpers_js_1 = require("../helpers.js");
|
|
|
238
238
|
});
|
|
239
239
|
(0, vitest_1.describe)('deleteByContextKey', () => {
|
|
240
240
|
(0, vitest_1.it)('should delete all chats for a context key', async () => {
|
|
241
|
-
await repository.create((0,
|
|
242
|
-
await repository.create((0,
|
|
243
|
-
await repository.create((0,
|
|
241
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
242
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-1' }));
|
|
243
|
+
await repository.create((0, helpers_1.createTestChat)({ contextKey: 'ctx-2' }));
|
|
244
244
|
const deletedCount = await repository.deleteByContextKey('ctx-1');
|
|
245
245
|
(0, vitest_1.expect)(deletedCount).toBe(2);
|
|
246
246
|
const remaining = await repository.findByContextKey('ctx-1');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MongoAgentChatRepository.test.js","sourceRoot":"","sources":["../../../../src/__tests__/repositories/MongoAgentChatRepository.test.ts"],"names":[],"mappings":"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"}
|