Repository navigation
feat: add Chroma to the integration tests - #180
Conversation
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The Chroma setup is complete, API-compatible, and consistently integrated into the existing test infrastructure.
Review effort: Balanced
Findings: None
What changed in this PR
Adds Chroma 1.5.9 to the shared vector-store integration test suite using ChromaDotNet.VectorData.
Changes:
- Adds Chroma as a supported database and configures its container.
- Adds the Chroma vector-store dependency.
- Runs all seven vector-store integration tests against Chroma.
| File | Description |
|---|---|
src/IntegrationTests/SupportedDatabase.cs |
Adds the Chroma database option. |
src/IntegrationTests/LangChain.Databases.IntegrationTests.csproj |
References the Chroma provider. |
src/IntegrationTests/DatabaseTests.cs |
Enables Chroma across vector-store tests. |
src/IntegrationTests/DatabaseTests.Configure.cs |
Starts and configures Chroma 1.5.9. |
src/Directory.Packages.props |
Pins ChromaDotNet.VectorData 0.4.1. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
efecd6b to
b4f3f5a
Compare
The vector store tests run on Chroma 1.5.9 too, through CommunityToolkit.VectorData.Chroma, a Microsoft.Extensions.VectorData provider for Chroma.
|
@HavenDV when you have a moment, could you approve the workflow run? I'd like to see the Chroma tests pass in the CI too.
The same holds for |
Fixes #179
Adds Chroma to the databases of the integration tests:
SupportedDatabase.Chroma, achromadb/chroma:1.5.9container started like the OpenSearch one, and[TestCase(SupportedDatabase.Chroma)]on the 7 tests ofDatabaseTests, which all pass.The Chroma row of the README now names
CommunityToolkit.VectorData.Chroma:Microsoft.SemanticKernel.Connectors.Chromastill uses the v1 API (#179).Chroma runs on
CommunityToolkit.VectorData.Chroma, the Chroma provider of the AI Community Toolkit (CommunityToolkit/AI#58), built on ChromaDotNet.Client. These tests already useCommunityToolkit.VectorData.InMemoryfrom the same toolkit. I maintain ChromaDotNet.ChromaDotNet.Client is also used by the Chroma integrations of the Aspire Community Toolkit (CommunityToolkit/Aspire#2219, merged).
To run the Chroma tests, with Docker running: