fix: update TS client tests for v3 API endpoints
Update mock URLs in memoryClient.crud.test.ts and memoryClient.search.test.ts to match v3 endpoints: - add: /v1/memories/ -> /v3/memories/ - search: /v2/memories/search/ -> /v3/memories/search/ - deleteAll: stays on /v1/memories/ (no v3 equivalent) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
e1e033daef
commit
163444e33b
@@ -21,33 +21,33 @@ installConsoleSuppression();
|
|||||||
// ─── add() ───────────────────────────────────────────────
|
// ─── add() ───────────────────────────────────────────────
|
||||||
|
|
||||||
describe("MemoryClient - add()", () => {
|
describe("MemoryClient - add()", () => {
|
||||||
test("sends POST to /v1/memories/", async () => {
|
test("sends POST to /v3/memories/", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v1/memories/", { status: 200, body: [createMockMemory()] });
|
extra.set("/v3/memories/", { status: 200, body: [createMockMemory()] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
await client.add([{ role: "user", content: "Hello" }], { userId: "u1" });
|
await client.add([{ role: "user", content: "Hello" }], { userId: "u1" });
|
||||||
|
|
||||||
expect(findFetchCall(mock, "/v1/memories/", "POST")).toBeDefined();
|
expect(findFetchCall(mock, "/v3/memories/", "POST")).toBeDefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
test("includes messages in request body", async () => {
|
test("includes messages in request body", async () => {
|
||||||
const messages = [{ role: "user" as const, content: "Hello, I am Alex" }];
|
const messages = [{ role: "user" as const, content: "Hello, I am Alex" }];
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v1/memories/", { status: 200, body: [createMockMemory()] });
|
extra.set("/v3/memories/", { status: 200, body: [createMockMemory()] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
await client.add(messages, { userId: "u1" });
|
await client.add(messages, { userId: "u1" });
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v1/memories/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/", "POST");
|
||||||
expect(getFetchBody(call!).messages).toEqual(messages);
|
expect(getFetchBody(call!).messages).toEqual(messages);
|
||||||
});
|
});
|
||||||
|
|
||||||
test("includes user_id in request body", async () => {
|
test("includes user_id in request body", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v1/memories/", { status: 200, body: [createMockMemory()] });
|
extra.set("/v3/memories/", { status: 200, body: [createMockMemory()] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
@@ -55,19 +55,19 @@ describe("MemoryClient - add()", () => {
|
|||||||
user_id: "user_1",
|
user_id: "user_1",
|
||||||
});
|
});
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v1/memories/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/", "POST");
|
||||||
expect(getFetchBody(call!).user_id).toBe("user_1");
|
expect(getFetchBody(call!).user_id).toBe("user_1");
|
||||||
});
|
});
|
||||||
|
|
||||||
test("sends empty messages array without crashing", async () => {
|
test("sends empty messages array without crashing", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v1/memories/", { status: 200, body: [] });
|
extra.set("/v3/memories/", { status: 200, body: [] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
await client.add([], { userId: "u1" });
|
await client.add([], { userId: "u1" });
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v1/memories/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/", "POST");
|
||||||
expect(getFetchBody(call!).messages).toEqual([]);
|
expect(getFetchBody(call!).messages).toEqual([]);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -15,9 +15,9 @@ import {
|
|||||||
installConsoleSuppression();
|
installConsoleSuppression();
|
||||||
|
|
||||||
describe("MemoryClient - search()", () => {
|
describe("MemoryClient - search()", () => {
|
||||||
test("sends POST to /v2/memories/search/ by default", async () => {
|
test("sends POST to /v3/memories/search/ by default", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
@@ -25,12 +25,12 @@ describe("MemoryClient - search()", () => {
|
|||||||
filters: { userId: "u1" },
|
filters: { userId: "u1" },
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(findFetchCall(mock, "/v2/memories/search/", "POST")).toBeDefined();
|
expect(findFetchCall(mock, "/v3/memories/search/", "POST")).toBeDefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
test("includes query in request body", async () => {
|
test("includes query in request body", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
@@ -38,25 +38,25 @@ describe("MemoryClient - search()", () => {
|
|||||||
filters: { userId: "u1" },
|
filters: { userId: "u1" },
|
||||||
});
|
});
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v2/memories/search/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/search/", "POST");
|
||||||
expect(getFetchBody(call!).query).toBe("What is my name?");
|
expect(getFetchBody(call!).query).toBe("What is my name?");
|
||||||
});
|
});
|
||||||
|
|
||||||
test("passes filters through to the API body", async () => {
|
test("passes filters through to the API body", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
await client.search("test", { filters: { userId: "u1" } });
|
await client.search("test", { filters: { userId: "u1" } });
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v2/memories/search/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/search/", "POST");
|
||||||
expect(getFetchBody(call!).filters).toEqual({ user_id: "u1" });
|
expect(getFetchBody(call!).filters).toEqual({ user_id: "u1" });
|
||||||
});
|
});
|
||||||
|
|
||||||
test("passes complex OR filters through to the API body", async () => {
|
test("passes complex OR filters through to the API body", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
const mock = setupMockFetch(extra);
|
const mock = setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
@@ -64,7 +64,7 @@ describe("MemoryClient - search()", () => {
|
|||||||
filters: { OR: [{ user_id: "u1" }, { agent_id: "a1" }] },
|
filters: { OR: [{ user_id: "u1" }, { agent_id: "a1" }] },
|
||||||
});
|
});
|
||||||
|
|
||||||
const call = findFetchCall(mock, "/v2/memories/search/", "POST");
|
const call = findFetchCall(mock, "/v3/memories/search/", "POST");
|
||||||
const body = getFetchBody(call!);
|
const body = getFetchBody(call!);
|
||||||
expect(body.filters).toEqual({
|
expect(body.filters).toEqual({
|
||||||
OR: [{ user_id: "u1" }, { agent_id: "a1" }],
|
OR: [{ user_id: "u1" }, { agent_id: "a1" }],
|
||||||
@@ -73,7 +73,7 @@ describe("MemoryClient - search()", () => {
|
|||||||
|
|
||||||
test("does not crash when called without options", async () => {
|
test("does not crash when called without options", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
setupMockFetch(extra);
|
setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
@@ -83,7 +83,7 @@ describe("MemoryClient - search()", () => {
|
|||||||
|
|
||||||
test("handles empty results array", async () => {
|
test("handles empty results array", async () => {
|
||||||
const extra = new Map<string, { status: number; body: unknown }>();
|
const extra = new Map<string, { status: number; body: unknown }>();
|
||||||
extra.set("/v2/memories/search/", { status: 200, body: [] });
|
extra.set("/v3/memories/search/", { status: 200, body: [] });
|
||||||
setupMockFetch(extra);
|
setupMockFetch(extra);
|
||||||
|
|
||||||
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
const client = new MemoryClient({ apiKey: TEST_API_KEY });
|
||||||
|
|||||||
Reference in New Issue
Block a user