trustgraph/tests/unit
cybermaggedon 2c3a699af3
feat: extend SPARQL evaluator with comprehensive function and operator support (#945)
Add 30+ SPARQL 1.1 built-in functions and the MINUS algebra operator to the
custom SPARQL query backend.

String functions:
- SUBSTR (2-arg and 3-arg forms), STRBEFORE, STRAFTER
- REPLACE (regex with flags), ENCODE_FOR_URI

Numeric functions:
- FLOOR, CEIL, ROUND, ABS

Date/time accessors:
- YEAR, MONTH, DAY, HOURS, MINUTES, SECONDS
- NOW, TZ

Hash functions:
- MD5, SHA1, SHA256, SHA512

Term constructors:
- IRI/URI, BNODE, UUID, STRUUID

Other functions:
- LANGMATCHES, RAND
- EXISTS / NOT EXISTS (with async pre-evaluation to bridge the
  sync expression evaluator and async algebra evaluator)

Algebra:
- MINUS set-difference operator
- HAVING already works via rdflib's Filter mapping (verified)

Fix SPARQL ORDER handling

Includes 653 lines of new unit tests covering all added functionality
across expressions, solutions, and algebra layers.
2026-05-21 10:50:11 +01:00
..
test_agent feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_api fix: library API get/update document round-trip bugs (#893) (#928) 2026-05-16 11:32:51 +01:00
test_base Recent fixes -> release/v2.4 (#891) 2026-05-08 19:48:12 +01:00
test_chunking Per-flow librarian clients and per-workspace response queues (#865) 2026-05-06 12:01:01 +01:00
test_cli feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_clients feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_concurrency Update rev-gateway for IAM integration (#940) 2026-05-19 21:45:43 +01:00
test_config Structure data mvp (#452) 2025-08-07 20:47:20 +01:00
test_cores Per-workspace queue routing for workspace-scoped services (#862) 2026-05-04 10:30:03 +01:00
test_decoding Per-flow librarian clients and per-workspace response queues (#865) 2026-05-06 12:01:01 +01:00
test_direct feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_embeddings Fix Ollama async issue (#854) 2026-04-28 15:43:04 +01:00
test_extract Fix ontology selector defaults, add bypass mode, enforce domain/range (#929) 2026-05-16 15:13:38 +01:00
test_gateway feat: add no-auth IAM regime as a drop-in replacement for iam-svc (#933) 2026-05-18 14:10:05 +01:00
test_iam feat: add no-auth IAM regime as a drop-in replacement for iam-svc (#933) 2026-05-18 14:10:05 +01:00
test_knowledge_graph feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_librarian Per-workspace queue routing for workspace-scoped services (#862) 2026-05-04 10:30:03 +01:00
test_provenance feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_pubsub Test fixes for Kafka (#834) 2026-04-18 23:06:01 +01:00
test_query feat: extend SPARQL evaluator with comprehensive function and operator support (#945) 2026-05-21 10:50:11 +01:00
test_rdf Pub/sub abstraction: decouple from Pulsar (#751) 2026-04-01 20:16:53 +01:00
test_reliability Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_retrieval Remove spurious workspace parameter from SPARQL algebra evaluator (#915) 2026-05-14 12:03:43 +01:00
test_rev_gateway Update rev-gateway for IAM integration (#940) 2026-05-19 21:45:43 +01:00
test_storage Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_structured_data Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_tables feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_text_completion Fixed document-rag workspace problem (#866) 2026-05-06 14:55:21 +01:00
test_translators Per-workspace queue routing for workspace-scoped services (#862) 2026-05-04 10:30:03 +01:00
__init__.py Test suite executed from CI pipeline (#433) 2025-07-14 14:57:44 +01:00
test_prompt_manager.py Feature/prompts jsonl (#619) 2026-01-26 17:38:00 +00:00
test_prompt_manager_edge_cases.py Update to enable knowledge extraction using the agent framework (#439) 2025-07-21 14:31:57 +01:00
test_python_api_client.py Add agent explainability instrumentation and unify envelope field naming (#795) 2026-04-13 16:16:42 +01:00