Skip to content

Commit 746e6da

Browse files
committed
chore: fix more tests
1 parent ab71348 commit 746e6da

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

src/common/search/vectorSearchEmbeddingsManager.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import z from "zod";
66
import { ErrorCodes, MongoDBError } from "../errors.js";
77
import { getEmbeddingsProvider } from "./embeddingsProvider.js";
88
import type { EmbeddingParameters, SupportedEmbeddingParameters } from "./embeddingsProvider.js";
9+
import { formatUntrustedData } from "../../tools/tool.js";
910

1011
export const similarityEnum = z.enum(["cosine", "euclidean", "dotProduct"]);
1112
export type Similarity = z.infer<typeof similarityEnum>;
@@ -101,7 +102,12 @@ export class VectorSearchEmbeddingsManager {
101102
`actual quantization: ${validation.actualQuantization}. Error: ${validation.error}`
102103
);
103104

104-
throw new MongoDBError(ErrorCodes.AtlasVectorSearchInvalidQuery, embeddingValidationMessages.join("\n"));
105+
throw new MongoDBError(
106+
ErrorCodes.AtlasVectorSearchInvalidQuery,
107+
formatUntrustedData("", ...embeddingValidationMessages)
108+
.map(({ text }) => text)
109+
.join("\n")
110+
);
105111
}
106112
}
107113

src/tools/mongodb/create/insertMany.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ export class InsertManyTool extends MongoDBToolBase {
4949
embeddingParameters,
5050
});
5151

52+
await this.session.vectorSearchEmbeddingsManager.assertFieldsHaveCorrectEmbeddings(
53+
{ database, collection },
54+
documents
55+
);
56+
5257
const result = await provider.insertMany(database, collection, documents);
5358
const content = formatUntrustedData(
5459
"Documents were inserted successfully.",
@@ -120,11 +125,6 @@ export class InsertManyTool extends MongoDBToolBase {
120125
processedDocuments[documentIndex][fieldPath] = generatedEmbeddings[index];
121126
}
122127

123-
await this.session.vectorSearchEmbeddingsManager.assertFieldsHaveCorrectEmbeddings(
124-
{ database, collection },
125-
processedDocuments
126-
);
127-
128128
return processedDocuments;
129129
}
130130

tests/integration/tools/mongodb/create/insertMany.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ describeWithMongoDB(
180180
});
181181

182182
const content = getResponseContent(response.content);
183-
expect(content).toContain("There were errors when inserting documents. No document was inserted.");
183+
expect(content).toContain("Error running insert-many");
184184
const untrustedContent = getDataFromUntrustedContent(content);
185185
expect(untrustedContent).toContain(
186186
"- Field embedding is an embedding with 8 dimensions and scalar quantization, and the provided value is not compatible. Actual dimensions: unknown, actual quantization: unknown. Error: not-a-vector"

0 commit comments

Comments
 (0)