Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,19 @@ on:
push:
branches:
- main
paths:
- "memgraph-toolbox/**"
- "integrations/mcp-memgraph/**"
- "integrations/langchain-memgraph/**"
- "integrations/lightrag-memgraph/**"
- "unstructured2graph/**"
pull_request:
paths:
- "memgraph-toolbox/**"
- "integrations/mcp-memgraph/**"
- "integrations/langchain-memgraph/**"
- "integrations/lightrag-memgraph/**"
- "unstructured2graph/**"

jobs:
changes:
Expand All @@ -13,6 +25,7 @@ jobs:
memgraph-toolbox: ${{ steps.filter.outputs.memgraph-toolbox }}
mcp-memgraph: ${{ steps.filter.outputs.mcp-memgraph }}
langchain-memgraph: ${{ steps.filter.outputs.langchain-memgraph }}
lightrag-memgraph: ${{ steps.filter.outputs.lightrag-memgraph }}
unstructured2graph: ${{ steps.filter.outputs.unstructured2graph }}
steps:
- name: Checkout code
Expand All @@ -31,6 +44,9 @@ jobs:
langchain-memgraph:
- 'integrations/langchain-memgraph/**'
- 'memgraph-toolbox/**'
lightrag-memgraph:
- 'integrations/lightrag-memgraph/**'
- 'memgraph-toolbox/**'
unstructured2graph:
- 'unstructured2graph/**'
- 'memgraph-toolbox/**'
Expand Down Expand Up @@ -138,6 +154,38 @@ jobs:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: uv run pytest .

test-lightrag-memgraph:
needs: changes
if: ${{ needs.changes.outputs.lightrag-memgraph == 'true' }}
runs-on: ubuntu-latest
defaults:
run:
working-directory: integrations/lightrag-memgraph
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.11.0

- name: Start Memgraph container
run: |
docker run -d -p 7687:7687 --name memgraph memgraph/memgraph-mage:latest --schema-info-enabled=True --telemetry-enabled=false
sleep 5
working-directory: .

- name: Install uv
run: python -m pip install uv
working-directory: .

- name: Install dependencies and run tests
run: |
uv venv
uv pip install -e .[dev]
.venv/bin/python -m pytest .

test-unstructured2graph:
needs: changes
if: ${{ needs.changes.outputs.unstructured2graph == 'true' }}
Expand Down
4 changes: 2 additions & 2 deletions integrations/langchain-memgraph/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "langchain-memgraph"
version = "0.1.11"
version = "0.1.12"
description = "An integration package connecting Memgraph and LangChain"
authors = [{ name = "Ante Javor", email = "ante.javor@memgraph.com" }]
readme = "README.md"
Expand All @@ -18,7 +18,7 @@ dependencies = [
"langchain-core>=1.0.0",
"langchain-classic>=1.0.0",
"neo4j>=5.28.1",
"memgraph-toolbox>=0.1.7",
"memgraph-toolbox>=0.1.8",
"langchain>=1.0.0",
]

Expand Down
1,228 changes: 4 additions & 1,224 deletions integrations/langchain-memgraph/uv.lock

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions integrations/lightrag-memgraph/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "lightrag-memgraph"
version = "0.1.2"
version = "0.1.3"
description = "LightRAG integration with Memgraph"
readme = "README.md"
requires-python = ">=3.10"
Expand All @@ -23,7 +23,7 @@ classifiers = [

dependencies = [
"lightrag-hku[api]==1.4.8.2",
"memgraph-toolbox>=0.1.7",
"memgraph-toolbox>=0.1.8",
"numpy>=1.21.0",
]

Expand Down
Empty file.
31 changes: 31 additions & 0 deletions integrations/lightrag-memgraph/tests/test_import.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
"""Simple tests to verify lightrag-memgraph installation."""


def test_import_lightrag_memgraph():
"""Test that lightrag_memgraph can be imported."""
from lightrag_memgraph import MemgraphLightRAGWrapper

assert MemgraphLightRAGWrapper is not None


def test_wrapper_instantiation():
"""Test that MemgraphLightRAGWrapper can be instantiated."""
from lightrag_memgraph import MemgraphLightRAGWrapper

wrapper = MemgraphLightRAGWrapper()
assert wrapper is not None
assert wrapper.rag is None
assert wrapper.log_level == "INFO"
assert wrapper.disable_embeddings is False


def test_wrapper_with_custom_params():
"""Test that MemgraphLightRAGWrapper accepts custom parameters."""
from lightrag_memgraph import MemgraphLightRAGWrapper

wrapper = MemgraphLightRAGWrapper(
log_level="DEBUG",
disable_embeddings=True,
)
assert wrapper.log_level == "DEBUG"
assert wrapper.disable_embeddings is True
4 changes: 2 additions & 2 deletions integrations/mcp-memgraph/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "mcp-memgraph"
version = "0.1.8"
version = "0.1.9"
description = "MCP integration and utilities for Memgraph MCP server"
readme = "README.md"
requires-python = ">=3.10"
Expand All @@ -24,7 +24,7 @@ dependencies = [
"httpx>=0.28.1",
"mcp[cli]>=1.9.3",
"neo4j>=5.28.1",
"memgraph-toolbox>=0.1.7",
"memgraph-toolbox>=0.1.8",
"pytest>=8.3.5",
"fastmcp>=2.13.0.2",
]
Expand Down
Loading