Team Ai
Apppublic

joelgilbert/NL2SQL

sourceHugging Facemitupdated 11mo agoView on Hugging Face
0likes
test_setup.py91 linesDownload Raw Back to tests
1"""2Basic test to verify project setup and imports.3Run with: python -m pytest tests/test_setup.py -v4"""5 6import pytest7 8 9def test_imports():10    """Test that all main modules can be imported."""11    12    # Config13    from config import settings, prompts14    assert settings is not None15    assert prompts is not None16    17    # Database18    from database import connection, schema_manager, query_executor19    assert connection is not None20    assert schema_manager is not None21    assert query_executor is not None22    23    # Vector store24    from vector_store import upstash_client, embeddings25    assert upstash_client is not None26    assert embeddings is not None27    28    # Agents29    from agents import gatekeeper, sql_generator, explainer30    assert gatekeeper is not None31    assert sql_generator is not None32    assert explainer is not None33    34    # Security35    from security import validator, auth, audit_logger36    assert validator is not None37    assert auth is not None38    assert audit_logger is not None39    40    # Utils41    from utils import error_handler, sql_parser, helpers42    assert error_handler is not None43    assert sql_parser is not None44    assert helpers is not None45 46 47def test_config_loading():48    """Test that configuration loads properly."""49    from config.settings import settings50    51    # These might be empty in test but should be accessible52    assert hasattr(settings, 'database')53    assert hasattr(settings, 'api')54    assert hasattr(settings, 'upstash')55    assert hasattr(settings, 'security')56 57 58def test_prompt_templates():59    """Test that prompt templates are defined."""60    from config.prompts import PromptTemplates, EXAMPLE_QUERIES61    62    assert PromptTemplates.GATEKEEPER_SYSTEM is not None63    assert PromptTemplates.SQL_GENERATION_SYSTEM is not None64    assert PromptTemplates.RESULTS_EXPLANATION_SYSTEM is not None65    assert EXAMPLE_QUERIES is not None66 67 68def test_helper_functions():69    """Test basic helper functions."""70    from utils.helpers import (71        truncate_long_text,72        format_execution_time,73        pluralize74    )75    76    # Test truncate77    assert truncate_long_text("short", 10) == "short"78    assert len(truncate_long_text("very long text here", 10)) <= 1079    80    # Test time formatting81    assert "ms" in format_execution_time(0.5)82    assert "s" in format_execution_time(2.5)83    84    # Test pluralize85    assert "1 row" in pluralize(1, "row")86    assert "2 rows" in pluralize(2, "row")87 88 89if __name__ == "__main__":90    pytest.main([__file__, "-v"])91