feat: adds tests for the env settings
This commit is contained in:
parent
2f225c9e03
commit
57f864a58f
1 changed files with 170 additions and 0 deletions
|
|
@ -331,3 +331,173 @@ def test_rdflib_ontology_resolver_default_matching_strategy():
|
|||
|
||||
resolver = RDFLibOntologyResolver()
|
||||
assert isinstance(resolver.matching_strategy, FuzzyMatchingStrategy)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_success():
|
||||
"""Test get_ontology_resolver_from_env returns correct resolver with valid parameters."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
from cognee.modules.ontology.rdf_xml.RDFLibOntologyResolver import RDFLibOntologyResolver
|
||||
from cognee.modules.ontology.matching_strategies import FuzzyMatchingStrategy
|
||||
|
||||
resolver = get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
assert isinstance(resolver, RDFLibOntologyResolver)
|
||||
assert isinstance(resolver.matching_strategy, FuzzyMatchingStrategy)
|
||||
assert resolver.ontology_file == "/test/path.owl"
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_unsupported_resolver():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for unsupported resolver."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="unsupported",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver: unsupported" in str(exc_info.value)
|
||||
assert "Supported resolvers are: RdfLib with FuzzyMatchingStrategy" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_unsupported_strategy():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for unsupported strategy."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="unsupported",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver: rdflib" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_empty_file_path():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for empty file path."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path=""
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver: rdflib" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_none_file_path():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for None file path."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path=None
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver: rdflib" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_empty_resolver():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for empty resolver."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver:" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_empty_strategy():
|
||||
"""Test get_ontology_resolver_from_env raises EnvironmentError for empty strategy."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
assert "Unsupported ontology resolver: rdflib" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_default_parameters():
|
||||
"""Test get_ontology_resolver_from_env with default empty parameters raises EnvironmentError."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError) as exc_info:
|
||||
get_ontology_resolver_from_env()
|
||||
|
||||
assert "Unsupported ontology resolver:" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_case_sensitivity():
|
||||
"""Test get_ontology_resolver_from_env is case sensitive."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
with pytest.raises(EnvironmentError):
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="RDFLIB",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
with pytest.raises(EnvironmentError):
|
||||
get_ontology_resolver_from_env(
|
||||
ontology_resolver="RdfLib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_with_actual_file():
|
||||
"""Test get_ontology_resolver_from_env works with actual file path."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
from cognee.modules.ontology.rdf_xml.RDFLibOntologyResolver import RDFLibOntologyResolver
|
||||
from cognee.modules.ontology.matching_strategies import FuzzyMatchingStrategy
|
||||
|
||||
resolver = get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/path/to/ontology.owl"
|
||||
)
|
||||
|
||||
assert isinstance(resolver, RDFLibOntologyResolver)
|
||||
assert isinstance(resolver.matching_strategy, FuzzyMatchingStrategy)
|
||||
assert resolver.ontology_file == "/path/to/ontology.owl"
|
||||
|
||||
|
||||
def test_get_ontology_resolver_from_env_resolver_functionality():
|
||||
"""Test that resolver created from env function works correctly."""
|
||||
from cognee.modules.ontology.get_default_ontology_resolver import get_ontology_resolver_from_env
|
||||
|
||||
resolver = get_ontology_resolver_from_env(
|
||||
ontology_resolver="rdflib",
|
||||
matching_strategy="fuzzy",
|
||||
ontology_file_path="/test/path.owl"
|
||||
)
|
||||
|
||||
resolver.build_lookup()
|
||||
assert isinstance(resolver.lookup, dict)
|
||||
|
||||
result = resolver.find_closest_match("test", "individuals")
|
||||
assert result is None # Should return None for non-existent entity
|
||||
|
||||
nodes, relationships, start_node = resolver.get_subgraph("test", "individuals")
|
||||
assert nodes == []
|
||||
assert relationships == []
|
||||
assert start_node is None
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue