Spaces:
Runtime error
Runtime error
| import { expect, test } from "@jest/globals"; | |
| import chroma from "./initClient"; | |
| test("it should modify collection", async () => { | |
| await chroma.reset(); | |
| const collection = await chroma.createCollection({ name: "test" }); | |
| expect(collection.name).toBe("test"); | |
| expect(collection.metadata).toBeUndefined(); | |
| await collection.modify({ name: "test2" }); | |
| expect(collection.name).toBe("test2"); | |
| expect(collection.metadata).toBeUndefined(); | |
| const collection2 = await chroma.getCollection({ name: "test2" }); | |
| expect(collection2.name).toBe("test2"); | |
| expect(collection2.metadata).toBeNull(); | |
| // test changing name and metadata independently | |
| // and verify there are no side effects | |
| const original_name = "test3"; | |
| const new_name = "test4"; | |
| const original_metadata = { test: "test" }; | |
| const new_metadata = { test: "test2" }; | |
| const collection3 = await chroma.createCollection({ | |
| name: original_name, | |
| metadata: original_metadata | |
| }); | |
| expect(collection3.name).toBe(original_name); | |
| expect(collection3.metadata).toEqual(original_metadata); | |
| await collection3.modify({ name: new_name }); | |
| expect(collection3.name).toBe(new_name); | |
| expect(collection3.metadata).toEqual(original_metadata); | |
| const collection4 = await chroma.getCollection({ name: new_name }); | |
| expect(collection4.name).toBe(new_name); | |
| expect(collection4.metadata).toEqual(original_metadata); | |
| await collection3.modify({ metadata: new_metadata }); | |
| expect(collection3.name).toBe(new_name); | |
| expect(collection3.metadata).toEqual(new_metadata); | |
| const collection5 = await chroma.getCollection({ name: new_name }); | |
| expect(collection5.name).toBe(new_name); | |
| expect(collection5.metadata).toEqual(new_metadata); | |
| }); | |
| test("it should store metadata", async () => { | |
| await chroma.reset(); | |
| const collection = await chroma.createCollection({ name: "test", metadata: { test: "test" } }); | |
| expect(collection.metadata).toEqual({ test: "test" }); | |
| // get the collection | |
| const collection2 = await chroma.getCollection({ name: "test" }); | |
| expect(collection2.metadata).toEqual({ test: "test" }); | |
| // get or create the collection | |
| const collection3 = await chroma.getOrCreateCollection({ name: "test" }); | |
| expect(collection3.metadata).toEqual({ test: "test" }); | |
| // modify | |
| await collection3.modify({ metadata: { test: "test2" } }); | |
| expect(collection3.metadata).toEqual({ test: "test2" }); | |
| // get it again | |
| const collection4 = await chroma.getCollection({ name: "test" }); | |
| expect(collection4.metadata).toEqual({ test: "test2" }); | |
| }); | |